.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6C14990]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6C060A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1D3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63E6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6C06148
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6C05D28]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6BF8030
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1D3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63D6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6BF80D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6C15AB8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6BF7E90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1D3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63D6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6BF7F30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6C05AB8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6BF7E90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1D3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63D6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6BF7F30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6C05D28]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6BF7FA0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1D3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63D6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6BF8040
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6BF5D28]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6BE8540
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1D3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63C6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6BE85E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6D56658]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6D495D8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1D3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63E6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6D49678
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.GetOrAddDictionary02()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       r9,[rbx+50]
mov       r8,[r9+28]
mov       rdx,[rbx+280]
mov       rcx,offset MD_DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IDictionary`2>, System.String, DotNetTips.Spargine.Tester.Models.RefTypes.Person`1)
call      qword ptr [7FFBE6DF5AB8]; DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
mov       [rsp+28],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
DotNetTips.Spargine.Extensions.DictionaryExtensions.GetOrAdd[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IDictionary`2, System.__Canon, System.__Canon)
		value = value.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		key = key.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		collection = collection.ArgumentNotNull();
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		if (collection.TryGetValue(key, out var item) is false)
		^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
			collection.Add(key, value);
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
			item = value;
			^^^^^^^^^^^^^
		return item;
		^^^^^^^^^^^^
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+30],rcx
mov       rdi,rcx
mov       rbx,rdx
mov       rsi,r8
mov       rbp,r9
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M01_L03
xor       ecx,ecx
test      rsi,rsi
setne     cl
test      ecx,ecx
je        near ptr M01_L04
test      rbx,rbx
je        near ptr M01_L05
mov       rcx,[rdi+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rdi
mov       rdx,7FFBE6DD6940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L01
 
lea       r8,[rsp+28]
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [r11]
test      eax,eax
je        near ptr M01_L06
M01_L02
 
mov       rax,[rsp+28]
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M01_L03
 
call      qword ptr [7FFBE668FB58]
mov       ecx,1D3
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdi,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rsi,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rsi
mov       rcx,rbp
call      qword ptr [7FFBE63F6670]
mov       rcx,rbp
call      CORINFO_HELP_THROW
M01_L04
 
call      qword ptr [7FFBE668FB58]
mov       ecx,1B3
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L05
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M01_L06
 
mov       rcx,[rdi+10]
cmp       qword ptr [rcx+10],38
jle       short M01_L07
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L07
jmp       short M01_L08
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD69E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L08
 
mov       rcx,rbx
mov       rdx,rsi
mov       r8,rbp
call      qword ptr [r11]
mov       [rsp+28],rbp
jmp       near ptr M01_L02
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2032680D768
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6BF4318]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2032680D760
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6134210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2032680D768
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FFCA63F5380
call      rax
mov       rdi,[rbp-40]
mov       rdx,203268001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFBE6C90DF0]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFBE6BE5FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFBE6435C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFBE5FF10F8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFBE6BE5EF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFBE63C4F30]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFBE63C4F30]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6435B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6C90FE8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61341F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,2545000D768
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6BF5DD0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,2545000D760
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6134210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2545000D768
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FFCA63F5380
call      rax
mov       rdi,[rbp-40]
mov       rdx,254500001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFBE6C911D0]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFBE6BE7FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFBE6435C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFBE5FF10F8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFBE6BE7EF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFBE63C4F30]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFBE63C4F30]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6435B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6C913C8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61341F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,1F0D1C0B770
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6C05DD0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,1F0D1C0B768
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6144210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1F0D1C0B770
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,68
vzeroupper
lea       rbp,[rsp+0A0]
xor       eax,eax
mov       [rbp-68],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-80],rsp
mov       [rbp-40],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L30
test      rbx,rbx
je        near ptr M01_L31
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L27
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-70],rax
test      rax,rax
je        near ptr M01_L16
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L16
jmp       near ptr M01_L08
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L06
M01_L02
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L07
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1F0D5C001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L24
M01_L03
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L25
add       rbx,[r13+10]
M01_L04
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       r8,4000000000000000
or        rax,r8
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
or        rdx,r8
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rdx,rcx
sub       r8,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6CA1C50]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L08
jmp       near ptr M01_L28
M01_L05
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L12
M01_L06
 
mov       rcx,rsi
mov       rdx,7FFBE6BF7FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L08
 
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L09
 
mov       r8d,[rdi+0C]
mov       r14,[rdi]
cmp       r8d,[r14+38]
jae       near ptr M01_L26
mov       r14,[r14+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       near ptr M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L09
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L10
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L14
M01_L11
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L15
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1F0D5C001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L05
M01_L12
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L20
add       rbx,[r13+10]
M01_L13
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
mov       rcx,4000000000000000
or        rdx,rcx
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdx
sub       r8,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6CA1C50]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L16
jmp       near ptr M01_L28
M01_L14
 
mov       rcx,rsi
mov       rdx,7FFBE6BF7FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L11
M01_L15
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L21
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L17
 
mov       r8d,[rdi+0C]
mov       rcx,[rdi]
cmp       r8d,[rcx+38]
jae       short M01_L18
mov       rcx,[rdi]
mov       r14,[rcx+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       short M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L17
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rbp-70]
mov       rcx,[rdi]
mov       ecx,[rcx+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L22
M01_L19
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L20
 
call      qword ptr [7FFBE6445C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L13
M01_L21
 
mov       rcx,rax
mov       r11,7FFBE60010F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-70]
M01_L22
 
test      ecx,ecx
jne       near ptr M01_L10
jmp       near ptr M01_L32
M01_L23
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L24
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L25
 
call      qword ptr [7FFBE6445C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L04
M01_L26
 
mov       rax,[rbp-70]
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L32
M01_L27
 
mov       rcx,rsi
mov       rdx,7FFBE6BF7EF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L28
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L33
M01_L29
 
mov       eax,1
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       ecx,10
call      qword ptr [7FFBE63D4F30]
int       3
M01_L31
 
mov       ecx,0C
call      qword ptr [7FFBE63D4F30]
int       3
M01_L32
 
mov       rcx,rsp
call      M01_L35
jmp       short M01_L34
M01_L33
 
mov       rax,[rbp-70]
mov       rcx,rax
mov       r11,7FFBE6001100
call      qword ptr [r11]
jmp       short M01_L29
M01_L34
 
xor       eax,eax
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L35
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0A0]
cmp       qword ptr [rbp-70],0
je        short M01_L36
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-70]
cmp       [rax],rcx
je        short M01_L36
mov       rcx,rax
mov       r11,7FFBE6001100
call      qword ptr [r11]
M01_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6445B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6CA1E58]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61441F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,16BBEC0D768
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6C15B60]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,16BBEC0D760
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6144210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,16BBEC0D768
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FFCA63F5380
call      rax
mov       rdi,[rbp-40]
mov       rdx,16BBEC001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFBE6CA1390]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFBE6BF7EB8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFBE6445C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFBE60010F8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFBE6BF7DE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFBE63D4F30]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFBE63D4F30]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFBE6001100
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFBE6001100
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6445B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6CA1588]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61441F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,1CFBD00D768
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6C25DD0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,1CFBD00D760
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6164210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1CFBD00D768
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,68
vzeroupper
lea       rbp,[rsp+0A0]
xor       eax,eax
mov       [rbp-68],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-80],rsp
mov       [rbp-40],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L30
test      rbx,rbx
je        near ptr M01_L31
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L27
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-70],rax
test      rax,rax
je        near ptr M01_L16
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L16
jmp       near ptr M01_L08
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L06
M01_L02
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L07
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1CFBD0001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L24
M01_L03
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L25
add       rbx,[r13+10]
M01_L04
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       r8,4000000000000000
or        rax,r8
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
or        rdx,r8
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rdx,rcx
sub       r8,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6CC16D0]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L08
jmp       near ptr M01_L28
M01_L05
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L12
M01_L06
 
mov       rcx,rsi
mov       rdx,7FFBE6C17FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L08
 
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L09
 
mov       r8d,[rdi+0C]
mov       r14,[rdi]
cmp       r8d,[r14+38]
jae       near ptr M01_L26
mov       r14,[r14+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       near ptr M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L09
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L10
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L14
M01_L11
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L15
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1CFBD0001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L05
M01_L12
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L20
add       rbx,[r13+10]
M01_L13
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
mov       rcx,4000000000000000
or        rdx,rcx
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdx
sub       r8,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6CC16D0]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L16
jmp       near ptr M01_L28
M01_L14
 
mov       rcx,rsi
mov       rdx,7FFBE6C17FC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L11
M01_L15
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L21
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L17
 
mov       r8d,[rdi+0C]
mov       rcx,[rdi]
cmp       r8d,[rcx+38]
jae       short M01_L18
mov       rcx,[rdi]
mov       r14,[rcx+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       short M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L17
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rbp-70]
mov       rcx,[rdi]
mov       ecx,[rcx+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L22
M01_L19
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L20
 
call      qword ptr [7FFBE6465C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L13
M01_L21
 
mov       rcx,rax
mov       r11,7FFBE60210F8
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-70]
M01_L22
 
test      ecx,ecx
jne       near ptr M01_L10
jmp       near ptr M01_L32
M01_L23
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L24
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L25
 
call      qword ptr [7FFBE6465C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L04
M01_L26
 
mov       rax,[rbp-70]
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L32
M01_L27
 
mov       rcx,rsi
mov       rdx,7FFBE6C17EF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L28
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L33
M01_L29
 
mov       eax,1
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       ecx,10
call      qword ptr [7FFBE63F4F30]
int       3
M01_L31
 
mov       ecx,0C
call      qword ptr [7FFBE63F4F30]
int       3
M01_L32
 
mov       rcx,rsp
call      M01_L35
jmp       short M01_L34
M01_L33
 
mov       rax,[rbp-70]
mov       rcx,rax
mov       r11,7FFBE6021100
call      qword ptr [r11]
jmp       short M01_L29
M01_L34
 
xor       eax,eax
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L35
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0A0]
cmp       qword ptr [rbp-70],0
je        short M01_L36
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-70]
cmp       [rax],rcx
je        short M01_L36
mov       rcx,rax
mov       r11,7FFBE6021100
call      qword ptr [r11]
M01_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6465B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6CC18D8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61641F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,26C1680B770
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6C25B60]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,26C1680B768
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6154210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,26C1680B770
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FFCA63F5380
call      rax
mov       rdi,[rbp-40]
mov       rdx,26C1A8001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFBE6CB1CF0]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFBE6C08458
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFBE6455C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFBE60110F8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFBE6C08380
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFBE63E4F30]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFBE63E4F30]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFBE6011100
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,[rbp-58]
mov       r11,7FFBE6011100
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6455B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6CB1EE8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61541F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,1CACDC0D768
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6D661F0]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,1CACDC0D760
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6164210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1CACDC0D768
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,70
vzeroupper
lea       rbp,[rsp+90]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
xor       eax,eax
mov       [rbp-30],rax
mov       [rbp-70],rsp
mov       [rbp-28],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L18
test      rbx,rbx
je        near ptr M01_L19
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L15
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       near ptr M01_L09
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L07
M01_L02
 
lea       rdx,[rbp-38]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L08
mov       r14,[rbp-30]
mov       [rbp-60],r14
cmp       [r14],r14b
lea       rcx,[rbp-40]
mov       rax,7FFCA63F5380
call      rax
mov       rdi,[rbp-40]
mov       rdx,1CACDC001C8
mov       rbx,[rdx]
sub       rdi,[rbx+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L06
M01_L03
 
mov       edx,0B2D05E00
cmp       rdi,rdx
jae       near ptr M01_L11
add       rdi,[rbx+10]
M01_L04
 
mov       r14,[rbp-60]
mov       rdx,[r14+48]
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdi
mov       rax,4000000000000000
or        rcx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rdx,rax
mov       rax,4000000000000000
or        rdx,rax
mov       rax,3FFFFFFFFFFFFFFF
and       rcx,rax
and       rdx,rax
sub       rcx,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rcx
vdivsd    xmm0,xmm0,[7FFBE6CD8F90]
vxorps    xmm1,xmm1,xmm1
xor       ebx,ebx
vucomisd  xmm0,xmm1
seta      bl
test      ebx,ebx
mov       rax,[rbp-58]
mov       rbx,[rbp+20]
je        short M01_L09
jmp       near ptr M01_L16
M01_L05
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L06
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L07
 
mov       rcx,rsi
mov       rdx,7FFBE6D58E80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L08
 
vmovdqu   xmm0,xmmword ptr [rbp-38]
vmovdqu   xmmword ptr [rbp-50],xmm0
lea       rdx,[rbp-50]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
test      eax,eax
mov       rax,[rbp-58]
jne       near ptr M01_L16
M01_L09
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L14
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       short M01_L05
M01_L10
 
mov       ecx,[rdi+0C]
mov       rdx,[rdi]
mov       r14d,[rdx+38]
cmp       ecx,r14d
jb        short M01_L13
mov       rax,[rbp-58]
inc       r14d
mov       [rdi+0C],r14d
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L20
M01_L11
 
call      qword ptr [7FFBE6465C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rdi,rax
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
mov       rdx,[rdx+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L12
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L10
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L14
 
mov       rcx,rax
mov       r11,7FFBE60212F8
call      qword ptr [r11]
test      eax,eax
je        short M01_L20
jmp       near ptr M01_L01
M01_L15
 
mov       rcx,rsi
mov       rdx,7FFBE6D58DA8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L21
M01_L17
 
mov       eax,1
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L18
 
mov       ecx,10
call      qword ptr [7FFBE63F4F30]
int       3
M01_L19
 
mov       ecx,0C
call      qword ptr [7FFBE63F4F30]
int       3
M01_L20
 
mov       rax,[rbp-58]
mov       rcx,rsp
call      M01_L23
jmp       short M01_L22
M01_L21
 
mov       rax,[rbp-58]
mov       rcx,rax
mov       r11,7FFBE6021300
call      qword ptr [r11]
jmp       short M01_L17
M01_L22
 
xor       eax,eax
add       rsp,70
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
M01_L23
 
push      rbp
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,30
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-58],0
je        short M01_L24
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-58]
cmp       [rax],rcx
je        short M01_L24
mov       rcx,rax
mov       r11,7FFBE6021300
call      qword ptr [r11]
M01_L24
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6465B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6CD9188]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61641F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.HasItemsWithPredicateTest()
push      rdi
push      rsi
push      rbx
sub       rsp,20
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       r8,1F7F900B770
mov       r8,[r8]
test      r8,r8
je        short M00_L02
test      rsi,rsi
je        short M00_L03
M00_L00
 
test      r8,r8
je        short M00_L03
mov       rdx,rsi
mov       rcx,offset MD_System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, System.Func`2>,Boolean>)
call      qword ptr [7FFBE6DE5B60]; System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
M00_L01
 
mov       rcx,[rbx+18]
mov       [rcx+4C],al
add       rsp,20
pop       rbx
pop       rsi
pop       rdi
ret
M00_L02
 
mov       rcx,offset MT_System.Func`2[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib],[System.Boolean, System.Private.CoreLib]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rdx,1F7F900B768
mov       rdx,[rdx]
mov       rcx,rdi
mov       r8,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
call      qword ptr [7FFBE6154210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1F7F900B770
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       r8,rdi
test      rsi,rsi
jne       short M00_L00
M00_L03
 
xor       eax,eax
jmp       short M00_L01
 
System.Linq.Enumerable.Any[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Func`2,Boolean>)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,68
vzeroupper
lea       rbp,[rsp+0A0]
xor       eax,eax
mov       [rbp-68],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-60],xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
mov       [rbp-80],rsp
mov       [rbp-40],rcx
mov       rsi,rcx
mov       rdi,rdx
mov       rbx,r8
test      rdi,rdi
je        near ptr M01_L30
test      rbx,rbx
je        near ptr M01_L31
mov       rcx,[rsi+10]
mov       r11,[rcx+10]
test      r11,r11
je        near ptr M01_L27
M01_L00
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-70],rax
test      rax,rax
je        near ptr M01_L16
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L16
jmp       near ptr M01_L08
M01_L01
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L06
M01_L02
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L07
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1F7F50001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L24
M01_L03
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L25
add       rbx,[r13+10]
M01_L04
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       r8,4000000000000000
or        rax,r8
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
or        rdx,r8
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rdx,rcx
sub       r8,rdx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6E494F0]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L08
jmp       near ptr M01_L28
M01_L05
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L12
M01_L06
 
mov       rcx,rsi
mov       rdx,7FFBE6DC65A0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L08
 
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L09
 
mov       r8d,[rdi+0C]
mov       r14,[rdi]
cmp       r8d,[r14+38]
jae       near ptr M01_L26
mov       r14,[r14+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       near ptr M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L09
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L01
M01_L10
 
mov       rcx,[rsi+10]
mov       r11,[rcx+18]
test      r11,r11
je        near ptr M01_L14
M01_L11
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-70]
call      qword ptr [r11]
mov       rcx,offset DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
mov       [rbp+20],rbx
cmp       [rbx+18],rcx
jne       near ptr M01_L15
mov       r13,[rbp-48]
mov       [rbp-78],r13
cmp       [r13],r13b
lea       rcx,[rbp-58]
mov       rax,7FFCA63F5380
call      rax
mov       rbx,[rbp-58]
mov       rdx,1F7F50001C8
mov       r13,[rdx]
sub       rbx,[r13+8]
cmp       dword ptr [7FFC45FFA0DC],0
jne       near ptr M01_L05
M01_L12
 
mov       edx,0B2D05E00
cmp       rbx,rdx
jae       near ptr M01_L20
add       rbx,[r13+10]
M01_L13
 
mov       r13,[rbp-78]
mov       r12,[r13+48]
mov       rax,3FFFFFFFFFFFFFFF
and       rax,rbx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rdx,r12
mov       rcx,4000000000000000
or        rdx,rcx
mov       r8,3FFFFFFFFFFFFFFF
and       r8,rax
mov       rcx,3FFFFFFFFFFFFFFF
and       rcx,rdx
sub       r8,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,r8
vdivsd    xmm0,xmm0,[7FFBE6E494F0]
vxorps    xmm1,xmm1,xmm1
xor       r10d,r10d
vucomisd  xmm0,xmm1
seta      r10b
test      r10d,r10d
mov       rax,[rbp-70]
mov       rbx,[rbp+20]
je        short M01_L16
jmp       near ptr M01_L28
M01_L14
 
mov       rcx,rsi
mov       rdx,7FFBE6DC65A0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L11
M01_L15
 
vmovdqu   xmm0,xmmword ptr [rbp-50]
vmovdqu   xmmword ptr [rbp-68],xmm0
lea       rdx,[rbp-68]
mov       rbx,[rbp+20]
mov       rcx,[rbx+8]
call      qword ptr [rbx+18]
mov       r10d,eax
test      r10d,r10d
mov       rax,[rbp-70]
jne       near ptr M01_L28
M01_L16
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L21
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L23
M01_L17
 
mov       r8d,[rdi+0C]
mov       rcx,[rdi]
cmp       r8d,[rcx+38]
jae       short M01_L18
mov       rcx,[rdi]
mov       r14,[rcx+10]
lea       ecx,[r8+1]
mov       [rdi+0C],ecx
cmp       r8d,[r14+8]
jae       short M01_L19
mov       ecx,r8d
lea       rcx,[rcx+rcx*2]
lea       r15,[r14+rcx*8+10]
cmp       dword ptr [r15+14],0FFFFFFFF
jl        short M01_L17
mov       rdx,[r15]
mov       r13,[r15+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r13
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rbp-70]
mov       rcx,[rdi]
mov       ecx,[rcx+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L22
M01_L19
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L20
 
call      qword ptr [7FFBE6455C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L13
M01_L21
 
mov       rcx,rax
mov       r11,7FFBE6011B98
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-70]
M01_L22
 
test      ecx,ecx
jne       near ptr M01_L10
jmp       near ptr M01_L32
M01_L23
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L24
 
call      CORINFO_HELP_POLL_GC
jmp       near ptr M01_L03
M01_L25
 
call      qword ptr [7FFBE6455C38]; System.DateTime.UpdateLeapSecondCacheAndReturnUtcNow()
mov       rbx,rax
jmp       near ptr M01_L04
M01_L26
 
mov       rax,[rbp-70]
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L32
M01_L27
 
mov       rcx,rsi
mov       rdx,7FFBE6DC64C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L00
M01_L28
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       short M01_L33
M01_L29
 
mov       eax,1
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       ecx,10
call      qword ptr [7FFBE63E4F30]
int       3
M01_L31
 
mov       ecx,0C
call      qword ptr [7FFBE63E4F30]
int       3
M01_L32
 
mov       rcx,rsp
call      M01_L35
jmp       short M01_L34
M01_L33
 
mov       rax,[rbp-70]
mov       rcx,rax
mov       r11,7FFBE6011BA0
call      qword ptr [r11]
jmp       short M01_L29
M01_L34
 
xor       eax,eax
add       rsp,68
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L35
 
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+0A0]
cmp       qword ptr [rbp-70],0
je        short M01_L36
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-70]
cmp       [rax],rcx
je        short M01_L36
mov       rcx,rax
mov       r11,7FFBE6011BA0
call      qword ptr [r11]
M01_L36
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark+<>c.b__5_0(System.Collections.Generic.KeyValuePair`2>)
push      rbx
sub       rsp,20
vzeroupper
mov       rbx,[rdx+8]
cmp       [rbx],bl
call      qword ptr [7FFBE6455B90]; System.DateTime.get_UtcNow()
mov       rcx,[rbx+48]
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
mov       rdx,4000000000000000
or        rax,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rcx,rdx
mov       rdx,4000000000000000
or        rcx,rdx
mov       rdx,3FFFFFFFFFFFFFFF
and       rax,rdx
and       rcx,rdx
sub       rax,rcx
vxorps    xmm0,xmm0,xmm0
vcvtsi2sd xmm0,xmm0,rax
vdivsd    xmm0,xmm0,[7FFBE6E496F8]
vxorps    xmm1,xmm1,xmm1
xor       eax,eax
vucomisd  xmm0,xmm1
seta      al
add       rsp,20
pop       rbx
ret
 
System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
push      rsi
push      rbx
sub       rsp,28
mov       rbx,rcx
mov       rsi,r8
test      rdx,rdx
je        short M03_L00
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
mov       [rbx+18],rsi
add       rsp,28
pop       rbx
pop       rsi
ret
M03_L00
 
call      qword ptr [7FFBE61541F8]
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6C14558]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C15290]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C16118]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DC3E58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DC3E70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DC40F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DC4118
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C24B88]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011110
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DC4138
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DC3E58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DC40F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C16148]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011118
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011118
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1CF8BB10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6BF5DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6BF6AD8]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6BFC018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DA5368
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5380
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5608
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5628
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C07690]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE5FF0FF0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5648
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63A3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63C66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5368
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DA5608
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6BFC048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE5FF0FF8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE5FF0FF8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1ECFC760008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6C25DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C26AD8]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C2C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DD5890
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DD58A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5B30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5B50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C37690]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6020FF0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5B70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5890
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5B30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C2C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,24FAAC50008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6C26010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C26D48]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C2C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DD5358
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5370
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD55F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5618
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C392D8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6020FF0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5638
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5358
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DD55F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C2C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2259B260008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6C260D0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C26E08]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C2C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DD5618
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5630
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD58B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DD58D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C37AC0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6020FF0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DD58F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5618
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DD58B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C2C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2B1DBDA0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6C06010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C06D48]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C0C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DB5FD8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DB5FF0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DB6278
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DB6298
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C184B8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6000FF0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DB62B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63B3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63D66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DB5FD8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DB6278
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C0C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6000FF8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6000FF8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1B7AD820008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6D56010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6D56D48]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6D5C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6E3B5E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B5F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B880
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B8A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6D684B8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011308
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B8C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B5E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B880
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6D5C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011310
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011310
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2DC29160008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryComparerTest()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,offset MT_DotNetTips.Spargine.Core.Collections.Generic.OrdinalStringComparer
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rdi,[rbx+280]
test      rdi,rdi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rcx,rbp
mov       rdx,rdi
mov       r8,rsi
call      qword ptr [7FFBE6DF5DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+20],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6DF6AD8]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6DFC018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6E5B948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6E5B960
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6E5BBE8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6E5BC08
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6DE92D8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6021BA0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6E5BC28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6E5B948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6E5BBE8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6DFC048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6021BA8
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6021BA8
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,22F91630008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE60110F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE6011108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE6011100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,15A39B80008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE60110F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE6011108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE6011100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,26E00590008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF10F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF1108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1B4E36E0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF10F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF1108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,2B358CC0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE60110F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE6011108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE6011100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5AA8
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5AA8
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,27EB6760008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF10F8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF1108
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE5FF1100
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1D0DE460008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF1300
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE5FF1310
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE5FF1308
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,31F0EAC0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary02()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
mov       rdi,[rbx+50]
mov       rbp,[rdi+28]
test      rdi,rdi
je        short M00_L01
xor       ecx,ecx
test      rbp,rbp
setne     cl
test      ecx,ecx
je        short M00_L02
test      rsi,rsi
je        near ptr M00_L03
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE6011B88
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rbp
mov       r11,7FFBE6011B98
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rdi
mov       rdx,rbp
mov       r11,7FFBE6011B90
call      qword ptr [r11]
M00_L01
 
mov       [rsp+20],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,21D463F0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65EE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65EE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65EE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L07
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DA0A18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6DA0A38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6DA0A58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L06
 
mov       rdx,rsi
call      qword ptr [7FFBE6144330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       short M01_L08
mov       eax,1F
jmp       short M01_L02
M01_L07
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L05
jmp       short M01_L06
M01_L08
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L09
jmp       short M01_L10
M01_L09
 
mov       rcx,rbx
mov       rdx,7FFBE6DA0A78
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L10
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L02
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rdi,rcx
mov       esi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      esi,esi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,esi
cmovl     ebx,esi
mov       ecx,ebx
call      qword ptr [7FFBE65EE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,esi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       esi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,esi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       esi
cmp       r13d,esi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rsi,rax
mov       r12,[rdi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6D7FA60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6D7FA78
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1A886401D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,1A886401960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6D7FAA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6144390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6D7FA88
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rdi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rdi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rdi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       esi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       ecx,0B76
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68245A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE61FD470]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rdi],edi
mov       esi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C079D8]
int       3
M02_L18
 
mov       rcx,1A8864002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,1A886401968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,1A8864002E0
xor       ecx,ecx
mov       rdx,1A886401970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6D7FA78
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rdi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65EE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6001118
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6DA0BB8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6824AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6824588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE614F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63AEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6DA0B98
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6001120
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6001120
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,1E918460008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65DE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65DE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65DE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6134348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6D91758
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6D91778
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6D917B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFBE6D91798
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFBE6134330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE65DE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6D90D00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6D90D18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,265E0801D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,265E0801960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6D90D40
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6D90D28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE65E7A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68145A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE61ED470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE65E7A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C0CE40]
int       3
M02_L18
 
mov       rcx,265E08002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,265E0801968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,265E08002E0
xor       ecx,ecx
mov       rdx,265E0801970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6D90D18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65DE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE5FF0FF8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6D918F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE65E7A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6814AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6814588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE613F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE639EFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6D918D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE5FF1000
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE5FF1000
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,2A672830008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65EE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65EE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65EE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DA16A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6DA16C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6DA1700
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFBE6DA16E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFBE6144330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE65EE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6DA0C48
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6DA0C60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,14D07401D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,14D07401960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6DA0C88
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6144390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6DA0C70
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68245A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE61FD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C0CD80]
int       3
M02_L18
 
mov       rcx,14D074002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,14D07401968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,14D074002E0
xor       ecx,ecx
mov       rdx,14D07401970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6DA0C60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65EE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6000FF8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6DA1840
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6824AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6824588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE614F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63AEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6DA1820
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6001000
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6001000
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,18D99540008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE660E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE660E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE660E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DC1878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6DC1898
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6DC18D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFBE6DC18B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFBE6164330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE660E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6DC0E20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6DC0E38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1603FC01D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,1603FC01960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6DC0E60
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6164390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6DC0E48
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68445A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE621D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C2CD80]
int       3
M02_L18
 
mov       rcx,1603FC002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,1603FC01968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,1603FC002E0
xor       ecx,ecx
mov       rdx,1603FC01970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6DC0E38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE660E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6DC1A18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6844AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6844588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE616F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63CEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6DC19F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6021000
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6021000
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,1A0CDA30008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65DE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65DE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65DE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6636360
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5DE0
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6636360
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6134348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DA1878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6DA1898
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6DA18D8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFBE6DA18B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFBE6134330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE65DE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6DA0E68
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6DA0E80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,229D5801D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,229D5801960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6DA0EA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6DA0E90
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE65E8488
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68145A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE61ED470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE65E8488
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C0CD80]
int       3
M02_L18
 
mov       rcx,229D58002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,229D5801968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,229D58002E0
xor       ecx,ecx
mov       rdx,229D5801970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6DA0E80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65DE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE5FF0FF8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6DA1A18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE65E8488
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6814AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6814588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE613F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE639EFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6DA19F8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE5FF1000
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE5FF1000
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,26A637A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65FE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65FE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65FE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6154348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        near ptr M01_L09
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L04
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L02
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DB26E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6DB2700
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6DB2740
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L07
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       short M01_L02
M01_L08
 
mov       eax,1F
jmp       short M01_L02
M01_L09
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L10
jmp       short M01_L11
M01_L10
 
mov       rcx,rbx
mov       rdx,7FFBE6DB2720
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L11
 
mov       rdx,rsi
call      qword ptr [7FFBE6154330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
jmp       short M01_L08
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L15
test      ebx,ebx
jl        near ptr M02_L17
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE65FE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6DB13F0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6DB1408
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,2AD93401D60
cmp       rbp,[rcx]
jne       near ptr M02_L18
mov       rcx,2AD93401960
mov       rax,[rcx]
M02_L08
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L09
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L10
jmp       short M02_L11
M02_L10
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6DB1430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L11
 
mov       rdx,r8
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L12
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L13
jmp       short M02_L14
M02_L13
 
mov       rcx,r12
mov       rdx,7FFBE6DB1418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L14
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L15
 
cmp       edi,0FFFFFFFF
je        short M02_L16
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE6607A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68345A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE620D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L16
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L17
 
mov       ecx,0B98
mov       rdx,7FFBE6607A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6C1CD80]
int       3
M02_L18
 
mov       rcx,2AD934002D8
cmp       rbp,[rcx]
jne       short M02_L19
mov       rcx,2AD93401968
mov       rax,[rcx]
mov       r8,rax
mov       rax,r8
jmp       near ptr M02_L08
M02_L19
 
mov       r8,2AD934002E0
xor       ecx,ecx
mov       rdx,2AD93401970
cmp       rbp,[r8]
mov       r8,[rdx]
cmovne    r8,rcx
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L09
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6DB1408
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L12
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L12
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65FE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6010FF8
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6DB2880
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE6607A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6834AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6834588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE615F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63BEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6DB2860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6011000
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6011000
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,2EE25410008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE65EE070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE65EE058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE65EE0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A10
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C8]
test      rcx,rcx
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6E29AC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        short M01_L05
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D0]
test      r11,r11
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFBE6E29AE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L04
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D8]
test      rcx,rcx
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6E29B00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L07
 
mov       rdx,rsi
call      qword ptr [7FFBE6144330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
je        short M01_L10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E0]
test      r11,r11
je        short M01_L08
jmp       short M01_L09
M01_L08
 
mov       rcx,rbx
mov       rdx,7FFBE6E29B20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L09
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L04
M01_L10
 
mov       eax,1F
jmp       near ptr M01_L04
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L16
test      ebx,ebx
jl        near ptr M02_L18
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE65EE760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A8]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6E27180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6E27198
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,27F38801D60
cmp       rbp,[rcx]
jne       short M02_L08
mov       rcx,27F38801960
mov       rax,[rcx]
jmp       short M02_L09
M02_L08
 
mov       rax,27F388002D8
cmp       rbp,[rax]
jne       near ptr M02_L19
mov       rcx,27F38801968
mov       rax,[rcx]
M02_L09
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L10
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M02_L11
jmp       short M02_L12
M02_L11
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6E271C0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L12
 
mov       rdx,r8
call      qword ptr [7FFBE6144390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L13
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L14
jmp       short M02_L15
M02_L14
 
mov       rcx,r12
mov       rdx,7FFBE6E271A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L15
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L16
 
cmp       edi,0FFFFFFFF
je        short M02_L17
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68245A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE61FD470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L17
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L18
 
mov       ecx,0B98
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6BA4558]
int       3
M02_L19
 
mov       rcx,27F388002E0
xor       eax,eax
mov       rdx,27F38801970
cmp       rbp,[rcx]
cmove     rax,[rdx]
mov       r8,rax
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L10
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6E27198
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L13
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L13
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E8]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0F0]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE65EE250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6001310
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6E29C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE65F7A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6824AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6824588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE614F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63AEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6E29C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6001318
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6001318
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,2BFCA4A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToConcurrentDictionary()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
xor       eax,eax
mov       [rsp+30],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rdi,offset MT_System.Collections.Concurrent.ConcurrentDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rcx,rdi
call      CORINFO_HELP_NEWSFAST
mov       rbp,rax
mov       rdx,rsi
mov       rcx,rdi
call      qword ptr [7FFBE660E070]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       r8d,eax
xor       ecx,ecx
mov       [rsp+20],rcx
mov       rcx,rbp
mov       edx,0C
xor       r9d,r9d
call      qword ptr [7FFBE660E058]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,rbp
mov       rdx,rsi
call      qword ptr [7FFBE660E0B8]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
mov       [rsp+30],rbp
mov       rbx,[rbx+18]
mov       rdx,[rsp+30]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].GetCapacityFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rdi
push      rsi
push      rbx
sub       rsp,30
mov       [rsp+28],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0C0]
test      rcx,rcx
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6ED1D80
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
je        short M01_L05
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0C8]
test      r11,r11
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFBE6ED1DA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L03
 
mov       rcx,rdi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
M01_L04
 
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0D0]
test      rcx,rcx
je        short M01_L06
jmp       short M01_L07
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6ED1DC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L07
 
mov       rdx,rsi
call      qword ptr [7FFBE6164330]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfAny(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
je        short M01_L10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+0D8]
test      r11,r11
je        short M01_L08
jmp       short M01_L09
M01_L08
 
mov       rcx,rbx
mov       rdx,7FFBE6ED1DE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L09
 
mov       rcx,rsi
call      qword ptr [r11]
mov       ecx,1F
cmp       eax,1F
cmovg     ecx,eax
mov       eax,ecx
jmp       near ptr M01_L04
M01_L10
 
mov       eax,1F
jmp       near ptr M01_L04
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, Int32, Boolean, System.Collections.Generic.IEqualityComparer`1)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,38
mov       [rsp+30],rcx
mov       rsi,rcx
mov       edi,edx
mov       ebx,r8d
mov       r14d,r9d
mov       rbp,[rsp+0A0]
test      edi,edi
jle       near ptr M02_L16
test      ebx,ebx
jl        near ptr M02_L18
M02_L00
 
cmp       ebx,edi
cmovl     ebx,edi
mov       ecx,ebx
call      qword ptr [7FFBE660E760]; System.Collections.HashHelpers.GetPrime(Int32)
mov       ebx,eax
movsxd    rdx,edi
mov       rcx,offset MT_System.Object[]
call      CORINFO_HELP_NEWARR_1_OBJ
mov       r15,rax
mov       r13d,[r15+8]
test      r13d,r13d
je        near ptr M02_L23
lea       rcx,[r15+10]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
mov       edi,1
cmp       r13d,1
jle       short M02_L02
mov       r12,offset MT_System.Object
M02_L01
 
mov       rcx,r12
call      CORINFO_HELP_NEWSFAST
mov       ecx,edi
lea       rcx,[r15+rcx*8+10]
mov       rdx,rax
call      CORINFO_HELP_ASSIGN_REF
inc       edi
cmp       r13d,edi
jg        short M02_L01
M02_L02
 
mov       edx,r13d
mov       rcx,offset MT_System.Int32[]
call      CORINFO_HELP_NEWARR_1_VC
mov       rdi,rax
mov       r12,[rsi]
mov       rcx,r12
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       rax,[rdx+0A0]
test      rax,rax
je        short M02_L03
mov       rcx,rax
jmp       short M02_L04
M02_L03
 
mov       rdx,7FFBE6E2F788
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L04
 
movsxd    rdx,ebx
call      CORINFO_HELP_NEWARR_1_VC
mov       rbx,rax
test      rbp,rbp
jne       short M02_L07
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0A8]
test      rcx,rcx
je        short M02_L05
jmp       short M02_L06
M02_L05
 
mov       rcx,r12
mov       rdx,7FFBE6E2F7A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L06
 
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       rbp,rax
M02_L07
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L20
mov       rcx,1AFE2C01D60
cmp       rbp,[rcx]
jne       short M02_L08
mov       rcx,1AFE2C01960
mov       rax,[rcx]
jmp       short M02_L09
M02_L08
 
mov       rax,1AFE2C002D8
cmp       rbp,[rax]
jne       near ptr M02_L19
mov       rcx,1AFE2C01968
mov       rax,[rcx]
M02_L09
 
mov       r8,rax
mov       [rsp+28],r8
test      r8,r8
mov       r8,[rsp+28]
je        near ptr M02_L20
M02_L10
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B8]
test      rcx,rcx
je        short M02_L11
jmp       short M02_L12
M02_L11
 
mov       [rsp+28],r8
mov       rcx,r12
mov       rdx,7FFBE6E2F7C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
mov       r8,[rsp+28]
M02_L12
 
mov       rdx,r8
call      qword ptr [7FFBE6164390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rbp,rax
M02_L13
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0B0]
test      rcx,rcx
je        short M02_L14
jmp       short M02_L15
M02_L14
 
mov       rcx,r12
mov       rdx,7FFBE6E2F7B0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L15
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
lea       rcx,[r12+10]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+18]
mov       rdx,r15
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+20]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
lea       rcx,[r12+8]
mov       rdx,rbp
call      CORINFO_HELP_ASSIGN_REF
mov       rax,0FFFFFFFFFFFFFFFF
mov       ebp,[rbx+8]
mov       ecx,ebp
xor       edx,edx
div       rcx
inc       rax
mov       [r12+28],rax
lea       rcx,[rsi+8]
mov       rdx,r12
call      CORINFO_HELP_ASSIGN_REF
mov       [rsi+14],r14b
mov       eax,ebp
xor       edx,edx
div       r13d
mov       [rsi+10],eax
add       rsp,38
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M02_L16
 
cmp       edi,0FFFFFFFF
je        short M02_L17
mov       rcx,offset MT_System.ArgumentOutOfRangeException
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       ecx,0B76
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rbx,rax
call      qword ptr [7FFBE68445A0]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rdi
call      qword ptr [7FFBE621D470]
mov       rcx,rdi
call      CORINFO_HELP_THROW
M02_L17
 
cmp       [rsi],esi
mov       edi,0C
test      ebx,ebx
jge       near ptr M02_L00
M02_L18
 
mov       ecx,0B98
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       ecx,ebx
call      qword ptr [7FFBE6BC4648]
int       3
M02_L19
 
mov       rcx,1AFE2C002E0
xor       eax,eax
mov       rdx,1AFE2C01970
cmp       rbp,[rcx]
cmove     rax,[rdx]
mov       r8,rax
mov       rcx,r8
test      rcx,rcx
mov       r8,rcx
jne       near ptr M02_L10
M02_L20
 
mov       rcx,[r12+30]
mov       rcx,[rcx]
mov       rcx,[rcx+0A8]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,r12
mov       rdx,7FFBE6E2F7A0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M02_L22
 
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rbp
jne       near ptr M02_L13
mov       byte ptr [rsi+15],1
jmp       near ptr M02_L13
M02_L23
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 
System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].InitializeFromCollection(System.Collections.Generic.IEnumerable`1>)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,88
lea       rbp,[rsp+0B0]
vxorps    xmm4,xmm4,xmm4
vmovdqu   xmmword ptr [rbp-48],xmm4
xor       eax,eax
mov       [rbp-38],rax
mov       [rbp-70],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,[rcx]
mov       rdx,rsi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+0E0]
test      r11,r11
je        near ptr M03_L12
M03_L00
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M03_L03
M03_L01
 
mov       rcx,[rsi+30]
mov       rcx,[rcx]
mov       r11,[rcx+0E8]
test      r11,r11
je        near ptr M03_L08
M03_L02
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
cmp       qword ptr [rbp-40],0
je        near ptr M03_L09
mov       rcx,[rbp+10]
mov       rdx,[rcx+8]
mov       r8,[rbp-40]
mov       byte ptr [rbp-50],0
xor       r9d,r9d
mov       [rbp-4C],r9d
mov       r9,[rbp-38]
mov       [rsp+20],r9
xor       r9d,r9d
mov       [rsp+28],r9d
mov       [rsp+30],r9d
lea       r9,[rbp-48]
mov       [rsp+38],r9
mov       r9,[rbp-50]
call      qword ptr [7FFBE660E250]; System.Collections.Concurrent.ConcurrentDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryAddInternal(Tables, System.__Canon, System.Nullable`1, System.__Canon, Boolean, Boolean, System.__Canon ByRef)
test      eax,eax
je        near ptr M03_L10
M03_L03
 
mov       rax,[rbp-58]
cmp       rbx,rdi
jne       short M03_L06
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M03_L11
M03_L04
 
mov       ecx,[r14+0C]
mov       r15,[r14]
cmp       ecx,[r15+38]
jae       short M03_L07
mov       rdx,[r15+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M03_L05
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M03_L04
mov       rdx,[rcx]
mov       r15,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,r15
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M03_L01
M03_L05
 
call      CORINFO_HELP_RNGCHKFAIL
M03_L06
 
mov       rcx,rax
mov       r11,7FFBE6021BA0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M03_L01
mov       rax,[rbp-58]
jmp       near ptr M03_L13
M03_L07
 
mov       rax,[rbp-58]
mov       ecx,[r15+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       near ptr M03_L13
M03_L08
 
mov       rcx,rsi
mov       rdx,7FFBE6ED1F10
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L02
M03_L09
 
mov       ecx,1
mov       rdx,7FFBE6617A98
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6844AE0]
int       3
M03_L10
 
mov       rcx,offset MT_System.ArgumentException
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
call      qword ptr [7FFBE6844588]
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE616F708]
mov       rcx,rbx
call      CORINFO_HELP_THROW
M03_L11
 
call      qword ptr [7FFBE63CEFE8]
int       3
M03_L12
 
mov       rcx,rdx
mov       rdx,7FFBE6ED1EF0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M03_L00
M03_L13
 
cmp       rbx,rdi
jne       short M03_L15
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
je        short M03_L16
M03_L14
 
add       rsp,88
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M03_L15
 
mov       rcx,rax
mov       r11,7FFBE6021BA8
call      qword ptr [r11]
mov       rcx,[rbp+10]
cmp       dword ptr [rcx+10],0
jne       short M03_L14
M03_L16
 
mov       rcx,[rbp+10]
mov       rax,[rcx+8]
mov       [rbp-60],rax
mov       rdx,[rax+10]
mov       eax,[rdx+8]
mov       rdx,[rbp-60]
mov       r11,[rdx+18]
xor       edx,edx
div       dword ptr [r11+8]
mov       [rcx+10],eax
jmp       short M03_L14
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
mov       rbp,[rcx+40]
mov       [rsp+40],rbp
lea       rbp,[rbp+0B0]
cmp       qword ptr [rbp-58],0
je        short M03_L17
mov       rax,[rbp-58]
mov       rbx,[rax]
mov       rdi,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rbx,rdi
je        short M03_L17
mov       rcx,rax
mov       r11,7FFBE6021BA8
call      qword ptr [r11]
M03_L17
 
nop
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M04_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M04_L02
test      rbx,rbx
je        short M04_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M04_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M04_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M04_L02
 
test      rbx,rbx
je        short M04_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M04_L04
M04_L03
 
mov       rax,1F074A60008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M04_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6BF54B8]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6BF5500]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L27
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L05
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L05
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L28
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L08
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L10
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        short M01_L06
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L09
cmp       qword ptr [rbp+20],0
je        near ptr M01_L10
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L06
jmp       short M01_L10
M01_L05
 
mov       rdx,7FFBE6C06598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L19
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L07
 
mov       rdx,7FFBE6C055C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,7FFBE6C05A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L09
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
jne       short M01_L06
M01_L10
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        near ptr M01_L17
M01_L11
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE613EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L12
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L16
M01_L13
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       r11,[rdx+30]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C05B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE613EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
mov       rax,[rbp-30]
M01_L16
 
mov       rcx,rax
mov       r11,7FFBE5FF1050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L13
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L06
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C05A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L11
M01_L18
 
mov       rcx,rax
mov       rdx,7FFBE6C05B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L12
M01_L19
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L20
jmp       short M01_L21
M01_L20
 
mov       rcx,rax
mov       rdx,7FFBE6C055C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L21
 
call      qword ptr [7FFBE6BF4D20]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L24
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L22
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L22
jmp       short M01_L23
M01_L22
 
mov       rcx,rax
mov       rdx,7FFBE6C06428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L23
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L24
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rax
mov       rdx,7FFBE6C055C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L26
 
call      qword ptr [7FFBE6BF4D20]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L27
 
mov       ecx,6A7
mov       rdx,7FFBE6BDF1F0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6BF5590]
int       3
M01_L28
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE5FF1058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0C8
lea       rbp,[rsp+100]
xor       eax,eax
mov       [rbp-88],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C08688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L37
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C086C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C08788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-8C],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        near ptr M02_L19
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L20
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L20
jmp       near ptr M02_L21
M02_L12
 
mov       eax,[rbp-8C]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-44]
xor       eax,eax
M02_L16
 
movzx     eax,al
mov       [rbp-48],eax
test      r15d,r15d
je        near ptr M02_L43
mov       [rbp-88],rdx
mov       [rbp-80],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-68]
mov       [rsp+28],rcx
lea       rcx,[rbp-88]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6BFDE30]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-48]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
je        near ptr M02_L43
M02_L17
 
movzx     eax,byte ptr [rbp-68]
movzx     r8d,byte ptr [rbp-67]
mov       r13d,[rbp-64]
mov       r15d,[rbp-60]
mov       r10d,[rbp-5C]
mov       [rbp-74],r10d
mov       r9d,[rbp-58]
mov       [rbp-78],r9d
test      r15d,r15d
je        near ptr M02_L65
test      r13d,r13d
jl        short M02_L18
test      eax,eax
jne       near ptr M02_L55
cmp       r15d,1
je        near ptr M02_L62
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L22
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L22
jmp       near ptr M02_L23
M02_L18
 
test      eax,eax
je        near ptr M02_L48
test      r8d,r8d
jne       near ptr M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       near ptr M02_L25
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        near ptr M02_L25
jmp       near ptr M02_L26
M02_L19
 
mov       r15d,edx
jmp       near ptr M02_L09
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFBE6C09498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6BFD590]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L38
lea       rdx,[rdi+10]
mov       r8d,[rbp-8C]
mov       [rbp-0A8],rdx
mov       [rbp-6C],r8d
mov       rcx,140C5C002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-44],r10d
test      r10d,r10d
je        near ptr M02_L15
mov       [rbp-88],rdx
mov       [rbp-80],r8d
lea       rcx,[rbp-88]
call      qword ptr [7FFBE6BFDE60]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
jmp       near ptr M02_L16
M02_L22
 
mov       rcx,rbx
mov       rdx,7FFBE6C0CA48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L23
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6BFF0A8]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L28
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6C0FF80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6BFF0A8]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L27
 
mov       r12,rax
jmp       short M02_L24
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C0A568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
mov       rax,r12
test      rax,rax
je        short M02_L30
cmp       [rax],rcx
je        short M02_L30
mov       rdx,r12
call      qword ptr [7FFBE61343F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L30
 
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L34
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6C08518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6BFCB28]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L36
M02_L35
 
mov       rcx,rbx
mov       rdx,7FFBE6C07DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L36
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6BF7CC0]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L37
 
mov       rcx,140C5C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,140C5C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L31
jmp       near ptr M02_L02
M02_L38
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L40
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L39
jmp       short M02_L42
M02_L39
 
mov       [rbp-98],rax
jmp       short M02_L41
M02_L40
 
mov       [rbp-98],rax
M02_L41
 
mov       rcx,rbx
mov       rdx,7FFBE6C0A568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-98]
M02_L42
 
mov       rdx,rax
call      qword ptr [7FFBE61343D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L43
 
mov       rcx,140C5C12C10
mov       r9,[rcx]
mov       [rbp-0B0],rdx
mov       [rbp-70],r8d
mov       [rbp-4C],eax
mov       [rbp-50],r10d
test      r9,r9
jne       short M02_L44
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0A0],r9
mov       rdx,140C5C12C08
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6134210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,140C5C12C10
mov       rdx,[rbp-0A0]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0A0]
M02_L44
 
mov       rdx,[rbp-0B0]
mov       [rbp-88],rdx
mov       r8d,[rbp-70]
mov       [rbp-80],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-88]
movzx     r8d,byte ptr [rbp-4C]
movzx     r9d,byte ptr [rbp-50]
lea       rcx,[rbp-68]
call      qword ptr [7FFBE6BFDE48]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L17
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6C0F6F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C3D3B0]
mov       rax,r12
jmp       near ptr M02_L27
M02_L48
 
cmp       r15d,1
je        short M02_L51
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L49
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L49
jmp       short M02_L50
M02_L49
 
mov       rcx,rbx
mov       rdx,7FFBE6C0EC68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L50
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C3C930]
jmp       short M02_L54
M02_L51
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L52
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L52
jmp       short M02_L53
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFBE6C0E3E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L53
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C37DF8]
M02_L54
 
jmp       near ptr M02_L24
M02_L55
 
test      r8d,r8d
jne       short M02_L58
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L56
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L56
jmp       short M02_L57
M02_L56
 
mov       rcx,rbx
mov       rdx,7FFBE6C0DB58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L57
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C37378]
jmp       short M02_L61
M02_L58
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L59
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbx
mov       rdx,7FFBE6C0D2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L60
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C368F8]
M02_L61
 
jmp       near ptr M02_L24
M02_L62
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L63
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L63
jmp       short M02_L64
M02_L63
 
mov       rcx,rbx
mov       rdx,7FFBE6C0C1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L64
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C353F8]
jmp       near ptr M02_L24
M02_L65
 
test      eax,eax
je        near ptr M02_L72
test      r8d,r8d
jne       short M02_L68
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L66
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L66
jmp       short M02_L67
M02_L66
 
mov       rcx,rbx
mov       rdx,7FFBE6C0B7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L67
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C34948]
jmp       short M02_L71
M02_L68
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L69
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L69
jmp       short M02_L70
M02_L69
 
mov       rcx,rbx
mov       rdx,7FFBE6C0AF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L70
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6BFFDE0]
M02_L71
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L72
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L73
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L73
jmp       short M02_L74
M02_L73
 
mov       rcx,rbx
mov       rdx,7FFBE6C0A558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L74
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6BFF1E0]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6C16850]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6C16898]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L27
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L05
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L05
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L28
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L08
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L10
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        short M01_L06
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L09
cmp       qword ptr [rbp+20],0
je        near ptr M01_L10
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L06
jmp       short M01_L10
M01_L05
 
mov       rdx,7FFBE6C40980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L19
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L07
 
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L09
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
jne       short M01_L06
M01_L10
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        near ptr M01_L17
M01_L11
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE615EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L12
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L16
M01_L13
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       r11,[rdx+30]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE615EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
mov       rax,[rbp-30]
M01_L16
 
mov       rcx,rax
mov       r11,7FFBE6011050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L13
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L06
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L11
M01_L18
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L12
M01_L19
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L20
jmp       short M01_L21
M01_L20
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L21
 
call      qword ptr [7FFBE6C160B8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L24
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L22
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L22
jmp       short M01_L23
M01_L22
 
mov       rcx,rax
mov       rdx,7FFBE6C40810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L23
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L24
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L26
 
call      qword ptr [7FFBE6C160B8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L27
 
mov       ecx,6A7
mov       rdx,7FFBE6C235C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C16928]
int       3
M01_L28
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE6011058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0C8
lea       rbp,[rsp+100]
xor       eax,eax
mov       [rbp-88],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C42A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L37
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C42AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C42B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-8C],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        near ptr M02_L19
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L20
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L20
jmp       near ptr M02_L21
M02_L12
 
mov       eax,[rbp-8C]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-44]
xor       eax,eax
M02_L16
 
movzx     eax,al
mov       [rbp-48],eax
test      r15d,r15d
je        near ptr M02_L43
mov       [rbp-88],rdx
mov       [rbp-80],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-68]
mov       [rsp+28],rcx
lea       rcx,[rbp-88]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6C1F198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-48]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
je        near ptr M02_L43
M02_L17
 
movzx     eax,byte ptr [rbp-68]
movzx     r8d,byte ptr [rbp-67]
mov       r13d,[rbp-64]
mov       r15d,[rbp-60]
mov       r10d,[rbp-5C]
mov       [rbp-74],r10d
mov       r9d,[rbp-58]
mov       [rbp-78],r9d
test      r15d,r15d
je        near ptr M02_L65
test      r13d,r13d
jl        short M02_L18
test      eax,eax
jne       near ptr M02_L55
cmp       r15d,1
je        near ptr M02_L62
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L22
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L22
jmp       near ptr M02_L23
M02_L18
 
test      eax,eax
je        near ptr M02_L48
test      r8d,r8d
jne       near ptr M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       near ptr M02_L25
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        near ptr M02_L25
jmp       near ptr M02_L26
M02_L19
 
mov       r15d,edx
jmp       near ptr M02_L09
M02_L20
 
mov       rcx,rbx
mov       rdx,7FFBE6C43880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L21
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C1E8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L38
lea       rdx,[rdi+10]
mov       r8d,[rbp-8C]
mov       [rbp-0A8],rdx
mov       [rbp-6C],r8d
mov       rcx,2A6E50002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-44],r10d
test      r10d,r10d
je        near ptr M02_L15
mov       [rbp-88],rdx
mov       [rbp-80],r8d
lea       rcx,[rbp-88]
call      qword ptr [7FFBE6C1F1C8]
mov       rdx,[rbp-0A8]
mov       r8d,[rbp-6C]
mov       r10d,[rbp-44]
jmp       near ptr M02_L16
M02_L22
 
mov       rcx,rbx
mov       rdx,7FFBE6C46E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L23
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C64480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L28
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L28
jmp       short M02_L29
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6C4A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C64480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L27
 
mov       r12,rax
jmp       short M02_L24
M02_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L29
 
mov       rax,r12
test      rax,rax
je        short M02_L30
cmp       [rax],rcx
je        short M02_L30
mov       rdx,r12
call      qword ptr [7FFBE61543F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L30
 
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L34
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6C42900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6C1DE90]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L35
jmp       short M02_L36
M02_L35
 
mov       rcx,rbx
mov       rdx,7FFBE6C421C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L36
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C1D2C0]
mov       rax,rbx
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L37
 
mov       rcx,2A6E50002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,2A6E50002E0
cmp       rdi,[rcx]
jne       near ptr M02_L31
jmp       near ptr M02_L02
M02_L38
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L40
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L39
jmp       short M02_L42
M02_L39
 
mov       [rbp-98],rax
jmp       short M02_L41
M02_L40
 
mov       [rbp-98],rax
M02_L41
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-98]
M02_L42
 
mov       rdx,rax
call      qword ptr [7FFBE61543D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0C8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L43
 
mov       rcx,2A6E1010C18
mov       r9,[rcx]
mov       [rbp-0B0],rdx
mov       [rbp-70],r8d
mov       [rbp-4C],eax
mov       [rbp-50],r10d
test      r9,r9
jne       short M02_L44
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0A0],r9
mov       rdx,2A6E1010C10
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6154210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,2A6E1010C18
mov       rdx,[rbp-0A0]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0A0]
M02_L44
 
mov       rdx,[rbp-0B0]
mov       [rbp-88],rdx
mov       r8d,[rbp-70]
mov       [rbp-80],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-88]
movzx     r8d,byte ptr [rbp-4C]
movzx     r9d,byte ptr [rbp-50]
lea       rcx,[rbp-68]
call      qword ptr [7FFBE6C1F1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L17
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6C49AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6E8B0]
mov       rax,r12
jmp       near ptr M02_L27
M02_L48
 
cmp       r15d,1
je        short M02_L51
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L49
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L49
jmp       short M02_L50
M02_L49
 
mov       rcx,rbx
mov       rdx,7FFBE6C49050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L50
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6DE30]
jmp       short M02_L54
M02_L51
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L52
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L52
jmp       short M02_L53
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFBE6C487C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L53
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6D3B0]
M02_L54
 
jmp       near ptr M02_L24
M02_L55
 
test      r8d,r8d
jne       short M02_L58
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L56
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L56
jmp       short M02_L57
M02_L56
 
mov       rcx,rbx
mov       rdx,7FFBE6C47F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L57
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6C930]
jmp       short M02_L61
M02_L58
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L59
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbx
mov       rdx,7FFBE6C476B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L60
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-74]
mov       [rsp+20],eax
mov       r10d,[rbp-78]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C67C30]
M02_L61
 
jmp       near ptr M02_L24
M02_L62
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L63
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L63
jmp       short M02_L64
M02_L63
 
mov       rcx,rbx
mov       rdx,7FFBE6C465A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L64
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-74]
mov       [rsp+20],r15d
mov       r15d,[rbp-78]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C66730]
jmp       near ptr M02_L24
M02_L65
 
test      eax,eax
je        near ptr M02_L72
test      r8d,r8d
jne       short M02_L68
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L66
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L66
jmp       short M02_L67
M02_L66
 
mov       rcx,rbx
mov       rdx,7FFBE6C45B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L67
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C65C80]
jmp       short M02_L71
M02_L68
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L69
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L69
jmp       short M02_L70
M02_L69
 
mov       rcx,rbx
mov       rdx,7FFBE6C452F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L70
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C651B8]
M02_L71
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L72
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L73
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L73
jmp       short M02_L74
M02_L73
 
mov       rcx,rbx
mov       rdx,7FFBE6C44940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L74
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-74]
mov       [rsp+20],r13d
mov       r13d,[rbp-78]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C645B8]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6C365E0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6C36628]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE616EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6C50980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6C4F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6C4FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6C4FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE616EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C4FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C4FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE616EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE6021050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6C4F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6C35E48]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6C50810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6C4F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6C35E48]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6C22FF0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C366B8]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE6021058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE616EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C52A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE616FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6164390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C52AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE616ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE660EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6164390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C52B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE616ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE660EAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L16
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L17
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L17
jmp       short M02_L18
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-5C]
xor       eax,eax
jmp       near ptr M02_L19
M02_L16
 
mov       r15d,edx
jmp       short M02_L09
M02_L17
 
mov       rcx,rbx
mov       rdx,7FFBE6C53880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L18
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C3E8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,19634C002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        short M02_L15
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6C3F1C8]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
M02_L19
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6C3F198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L20
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFBE6C56E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C74480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6C54950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFBE61643F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6C52900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6C3DE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6C521C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C3D2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,19634C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,19634C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFBE6C54950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFBE61643D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,19630C10C18
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,19630C10C10
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6164210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,19630C10C18
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6C3F1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L20
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6C5A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C7F330]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6C59AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C7E8B0]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFBE6C59050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C7DE30]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFBE6C587C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C7D3B0]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFBE6C57F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C7C930]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFBE6C576B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C77C30]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFBE6C565A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C76730]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFBE6C55B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C75C80]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFBE6C552F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C751B8]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFBE6C54940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C745B8]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6C16850]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6C16898]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6C40980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE615EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE615EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE6011050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6C160B8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6C40810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6C160B8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6C235C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C16928]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE6011058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C42A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C42AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C42B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L16
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L17
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L17
jmp       short M02_L18
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r10d,[rbp-5C]
xor       eax,eax
jmp       near ptr M02_L19
M02_L16
 
mov       r15d,edx
jmp       short M02_L09
M02_L17
 
mov       rcx,rbx
mov       rdx,7FFBE6C43880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L18
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C1E8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,177F14002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        short M02_L15
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6C1F1C8]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
M02_L19
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6C1F198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L20
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L21
jmp       short M02_L22
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFBE6C46E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C64480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFBE61543F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6C42900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6C1DE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6C421C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C1D2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,177F14002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,177F14002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFBE61543D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,177F1412C10
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,177F1412C08
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6154210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,177F1412C10
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6C1F1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L20
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6C4A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6F330]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6C49AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6E8B0]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFBE6C49050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6DE30]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFBE6C487C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6D3B0]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFBE6C47F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6C930]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFBE6C476B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C67C30]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFBE6C465A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C66730]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFBE6C45B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C65C80]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFBE6C452F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C651B8]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFBE6C44940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C645B8]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6C165E0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6C16628]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE614EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6C30980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6C2F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6C2FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6C2FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE614EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C2FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C2FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE614EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE6001050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6C2F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6C15E48]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6C30810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6C2F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6C15E48]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6C02FF0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C166B8]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE6001058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE614EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C32A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE614FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6144390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C32AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE614ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65EEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6144390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C32B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE614ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65EEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        near ptr M02_L18
M02_L09
 
cmp       edx,r13d
jg        near ptr M02_L17
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L19
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L19
jmp       near ptr M02_L20
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r10d,[rbp-5C]
xor       eax,eax
M02_L15
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L35
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6C1F198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L35
M02_L16
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L37
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L21
jmp       near ptr M02_L22
M02_L17
 
mov       r13d,edx
jmp       near ptr M02_L10
M02_L18
 
mov       r15d,edx
jmp       near ptr M02_L09
M02_L19
 
mov       rcx,rbx
mov       rdx,7FFBE6C33880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L20
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C1E8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L38
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,1B669C002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        near ptr M02_L14
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6C1F1C8]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
jmp       near ptr M02_L15
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFBE6C36E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C54480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6C34950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFBE61443F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6C32900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6C1DE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6C321C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C1D2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,1B669C002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,1B669C002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,1B669C12C10
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L36
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,1B669C12C08
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6144210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1B669C12C10
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L36
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6C1F1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L16
M02_L37
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       near ptr M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L38
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L40
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L39
jmp       short M02_L42
M02_L39
 
mov       [rbp-0B0],rax
jmp       short M02_L41
M02_L40
 
mov       [rbp-0B0],rax
M02_L41
 
mov       rcx,rbx
mov       rdx,7FFBE6C34950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L42
 
mov       rdx,rax
call      qword ptr [7FFBE61443D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6C3A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C5F330]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6C39AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C5E8B0]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFBE6C39050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C5DE30]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFBE6C387C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C5D3B0]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFBE6C37F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C5C930]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFBE6C376B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C57C30]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFBE6C365A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C56730]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFBE6C35B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C55C80]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFBE6C352F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C551B8]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFBE6C34940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C545B8]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6C16850]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6C16898]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6C40980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6C3FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE615EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6C3FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE615EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE6011050
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6C160B8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6C40810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6C3F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6C160B8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6C235C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C16928]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE6011058
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE615EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L30
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6C42A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE615FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L36
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C42AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6154390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6C42B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE615ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65FEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L16
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       short M02_L18
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M02_L18
jmp       short M02_L19
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
xor       r8d,r8d
jmp       near ptr M02_L21
M02_L16
 
mov       r15d,edx
jmp       short M02_L09
M02_L17
 
lea       r10,[rdi+10]
mov       r11d,[rbp-0A4]
mov       [rbp-0C0],r10
mov       [rbp-84],r11d
mov       rcx,2307CC002E0
xor       r9d,r9d
cmp       r14,[rcx]
sete      r9b
mov       [rbp-5C],r9d
test      r9d,r9d
je        short M02_L15
jmp       short M02_L20
M02_L18
 
mov       rcx,rbx
mov       rdx,7FFBE6C43880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L19
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C1E8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L37
jmp       short M02_L17
M02_L20
 
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6C1F1C8]
mov       r8d,eax
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
M02_L21
 
movzx     edx,r8b
mov       [rbp-60],edx
test      r15d,r15d
je        near ptr M02_L42
mov       [rbp-0A0],r10
mov       [rbp-98],r11d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       r8d,r9d
mov       r9d,r15d
call      qword ptr [7FFBE6C1F198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       edx,[rbp-60]
mov       r9d,[rbp-5C]
mov       r10,[rbp-0C0]
mov       r11d,[rbp-84]
je        near ptr M02_L42
M02_L22
 
movzx     eax,byte ptr [rbp-80]
mov       r15d,[rbp-7C]
mov       r13d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r13d,r13d
je        near ptr M02_L68
test      r15d,r15d
jl        near ptr M02_L44
test      eax,eax
jne       near ptr M02_L58
cmp       r13d,1
je        near ptr M02_L65
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       short M02_L23
mov       rcx,[rcx+70]
test      rcx,rcx
je        short M02_L23
jmp       short M02_L24
M02_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6C46E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L24
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C64480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L25
 
mov       r12,rax
M02_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L27
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L27
jmp       short M02_L28
M02_L27
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L28
 
mov       rax,r12
test      rax,rax
je        short M02_L29
cmp       [rax],rcx
je        short M02_L29
mov       rdx,r12
call      qword ptr [7FFBE61543F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L29
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L30
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L33
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L31
jmp       short M02_L32
M02_L31
 
mov       rcx,rbx
mov       rdx,7FFBE6C42900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L32
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6C1DE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L33
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L34
jmp       short M02_L35
M02_L34
 
mov       rcx,rbx
mov       rdx,7FFBE6C421C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L35
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C1D2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L36
 
mov       rcx,2307CC002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,2307CC002E0
cmp       rdi,[rcx]
jne       near ptr M02_L30
jmp       near ptr M02_L02
M02_L37
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L39
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L38
jmp       short M02_L41
M02_L38
 
mov       [rbp-0B0],rax
jmp       short M02_L40
M02_L39
 
mov       [rbp-0B0],rax
M02_L40
 
mov       rcx,rbx
mov       rdx,7FFBE6C44950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L41
 
mov       rdx,rax
call      qword ptr [7FFBE61543D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L42
 
mov       rcx,23078C10C18
mov       rax,[rcx]
mov       [rbp-0C8],r10
mov       [rbp-88],r11d
mov       [rbp-64],edx
mov       [rbp-68],r9d
test      rax,rax
jne       short M02_L43
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       [rbp-0B8],rax
mov       rdx,23078C10C10
mov       rdx,[rdx]
mov       rcx,rax
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6154210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,23078C10C18
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,[rbp-0B8]
M02_L43
 
mov       r8,[rbp-0C8]
mov       [rbp-0A0],r8
mov       r10d,[rbp-88]
mov       [rbp-98],r10d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       r8d,r8d
mov       [rsp+30],r8d
mov       [rsp+38],r8d
mov       [rsp+40],rax
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6C1F1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L22
M02_L44
 
test      eax,eax
je        near ptr M02_L51
cmp       byte ptr [rbp-57],0
jne       short M02_L47
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L45
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L45
jmp       short M02_L46
M02_L45
 
mov       rcx,rbx
mov       rdx,7FFBE6C4A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L46
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6F330]
jmp       short M02_L50
M02_L47
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L48
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L48
jmp       short M02_L49
M02_L48
 
mov       rcx,rbx
mov       rdx,7FFBE6C49AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L49
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6E8B0]
M02_L50
 
jmp       near ptr M02_L26
M02_L51
 
cmp       r13d,1
je        short M02_L54
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L52
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L52
jmp       short M02_L53
M02_L52
 
mov       rcx,rbx
mov       rdx,7FFBE6C49050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L53
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6DE30]
jmp       short M02_L57
M02_L54
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L55
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L55
jmp       short M02_L56
M02_L55
 
mov       rcx,rbx
mov       rdx,7FFBE6C487C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L56
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6D3B0]
M02_L57
 
jmp       near ptr M02_L26
M02_L58
 
cmp       byte ptr [rbp-57],0
jne       short M02_L61
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L59
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L59
jmp       short M02_L60
M02_L59
 
mov       rcx,rbx
mov       rdx,7FFBE6C47F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L60
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C6C930]
jmp       short M02_L64
M02_L61
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L62
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L62
jmp       short M02_L63
M02_L62
 
mov       rcx,rbx
mov       rdx,7FFBE6C476B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L63
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r15d
mov       [rsp+38],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C67C30]
M02_L64
 
jmp       near ptr M02_L26
M02_L65
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L66
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L66
jmp       short M02_L67
M02_L66
 
mov       rcx,rbx
mov       rdx,7FFBE6C465A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L67
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C66730]
mov       rax,r12
jmp       near ptr M02_L25
M02_L68
 
test      eax,eax
je        near ptr M02_L75
cmp       byte ptr [rbp-57],0
jne       short M02_L71
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L69
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L69
jmp       short M02_L70
M02_L69
 
mov       rcx,rbx
mov       rdx,7FFBE6C45B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L70
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C65C80]
jmp       short M02_L74
M02_L71
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L72
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L72
jmp       short M02_L73
M02_L72
 
mov       rcx,rbx
mov       rdx,7FFBE6C452F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L73
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C651B8]
M02_L74
 
mov       r12,r15
jmp       near ptr M02_L26
M02_L75
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L76
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L76
jmp       short M02_L77
M02_L76
 
mov       rcx,rbx
mov       rdx,7FFBE6C44940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L77
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6C645B8]
mov       r12,r15
jmp       near ptr M02_L26
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6D37180]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6D371C8]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6D60980
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6D5F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6D5FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6D5FE58
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE613EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6D5FF40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6D5FF60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE613EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE5FF1368
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6D5F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6D369E8]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6D60810
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6D5F9A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6D369E8]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6D435C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6D37258]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE5FF1370
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6D62A70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6D62AB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6D62B70
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L19
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L19
jmp       near ptr M02_L20
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       r10d,[rbp-5C]
xor       eax,eax
M02_L17
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6D3FA68]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L18
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L21
jmp       near ptr M02_L22
M02_L19
 
mov       rcx,rbx
mov       rdx,7FFBE6D63880
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L20
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D3F1C8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,1F4BD8002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        near ptr M02_L16
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6D3FA98]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
jmp       near ptr M02_L17
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFBE6D66E30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D84D20]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6D64950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFBE61343F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6D62900
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6D3E760]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6D621C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6D3DB90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,1F4BD8002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,1F4BD8002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFBE6D64950
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFBE61343D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,1F4BD812C10
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,1F4BD812C08
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6134210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,1F4BD812C10
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6D3FA80]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L18
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6D6A368
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8FDB0]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6D69AE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8F330]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFBE6D69050
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8E8B0]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFBE6D687C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8DE30]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFBE6D67F40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8D3B0]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFBE6D676B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D8C930]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFBE6D665A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D86FD0]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFBE6D65B90
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D86520]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFBE6D652F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D85A58]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFBE6D64940
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6D84E58]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToFrozenDictionary()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
lea       r9,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.IEnumerable`1>>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2> ByRef)
xor       r8d,r8d
call      qword ptr [7FFBE6DC65E0]; System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
test      rax,rax
jne       short M00_L00
mov       rdx,[rsp+28]
mov       rcx,offset MD_System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]](System.Collections.Generic.Dictionary`2>)
call      qword ptr [7FFBE6DC6628]; System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
M00_L00
 
xor       ecx,ecx
mov       [rsp+28],rcx
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
 
System.Collections.Frozen.FrozenDictionary.GetExistingFrozenOrNewDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, System.Collections.Generic.IEqualityComparer`1, System.Collections.Generic.Dictionary`2 ByRef)
push      rbp
push      rsi
push      rbx
sub       rsp,50
lea       rbp,[rsp+60]
xor       eax,eax
mov       [rbp-28],rax
mov       [rbp-20],rax
mov       [rbp-40],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       [rbp+20],r8
mov       [rbp+28],r9
mov       rbx,rdx
test      rbx,rbx
je        near ptr M01_L28
cmp       qword ptr [rbp+20],0
jne       short M01_L01
mov       rdx,[rcx+10]
cmp       qword ptr [rdx+10],48
jle       near ptr M01_L06
mov       rdx,[rdx+48]
test      rdx,rdx
je        near ptr M01_L06
M01_L00
 
mov       rcx,rdx
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
mov       [rbp+20],rax
mov       rcx,[rbp+10]
M01_L01
 
mov       rdx,[rcx+10]
mov       r8,[rdx+18]
test      r8,r8
je        near ptr M01_L07
M01_L02
 
mov       rcx,r8
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L05
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx+10]
mov       rax,[rdx+20]
test      rax,rax
je        near ptr M01_L10
M01_L04
 
mov       rcx,rax
mov       rdx,rbx
call      qword ptr [7FFBE6134360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rcx,[rbp+28]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+28]
mov       rax,[rcx]
test      rax,rax
je        near ptr M01_L11
mov       rdx,rax
mov       r8d,[rdx+38]
sub       r8d,[rdx+40]
je        near ptr M01_L09
mov       rcx,rax
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rcx,rax
mov       rax,[rcx]
mov       rdx,offset MT_System.Collections.Generic.GenericEqualityComparer`1[[System.String, System.Private.CoreLib]]
cmp       rax,rdx
jne       short M01_L08
cmp       qword ptr [rbp+20],0
je        near ptr M01_L11
mov       rcx,[rcx]
mov       rdx,[rbp+20]
cmp       rcx,[rdx]
je        short M01_L09
jmp       near ptr M01_L11
M01_L05
 
mov       rcx,[rsi+8]
mov       rdx,[rbp+20]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L03
xor       eax,eax
mov       rcx,[rbp+28]
mov       [rcx],rax
mov       rax,rsi
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L06
 
mov       rdx,7FFBE6DD6598
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
jmp       near ptr M01_L00
M01_L07
 
mov       rdx,7FFBE6DD55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       r8,rcx
jmp       near ptr M01_L02
M01_L08
 
mov       rdx,[rbp+20]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        short M01_L11
M01_L09
 
mov       rcx,[rbp+28]
mov       rax,[rcx]
mov       ecx,[rax+38]
sub       ecx,[rax+40]
je        near ptr M01_L20
xor       eax,eax
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L10
 
mov       rdx,7FFBE6DD5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
jmp       near ptr M01_L04
M01_L11
 
mov       rax,[rbp+10]
mov       rdx,[rax+10]
mov       rdx,[rdx+20]
test      rdx,rdx
je        short M01_L12
jmp       short M01_L13
M01_L12
 
mov       rcx,rax
mov       rdx,7FFBE6DD5A78
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdx,rax
M01_L13
 
mov       rcx,rdx
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       r8,[rbp+20]
xor       edx,edx
call      qword ptr [7FFBE613EBC8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(Int32, System.Collections.Generic.IEqualityComparer`1)
mov       rcx,[rbp+28]
mov       rdx,rsi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L14
jmp       short M01_L15
M01_L14
 
mov       rcx,rax
mov       rdx,7FFBE6DD5B60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L15
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-30],rax
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L17
jmp       short M01_L18
M01_L17
 
mov       rcx,rax
mov       rdx,7FFBE6DD5B80
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L18
 
lea       rdx,[rbp-28]
mov       rcx,[rbp-30]
call      qword ptr [r11]
mov       rcx,[rbp+28]
mov       rdx,[rcx]
mov       r8,[rbp-28]
mov       r9,[rbp-20]
cmp       [rdx],dl
mov       rcx,rdx
mov       rdx,r8
mov       r8,r9
mov       r9d,1
call      qword ptr [7FFBE613EE98]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].TryInsert(System.__Canon, System.__Canon, System.Collections.Generic.InsertionBehavior)
M01_L19
 
mov       rcx,[rbp-30]
mov       r11,7FFBE5FF1C00
call      qword ptr [r11]
test      eax,eax
jne       short M01_L16
mov       rcx,rsp
call      M01_L29
jmp       near ptr M01_L09
M01_L20
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L21
jmp       short M01_L22
M01_L21
 
mov       rcx,rax
mov       rdx,7FFBE6DD55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L22
 
call      qword ptr [7FFBE6DC5E48]
mov       rcx,[rax+8]
cmp       rcx,[rbp+20]
je        short M01_L25
mov       rax,[rbp+10]
mov       rcx,[rax+10]
cmp       qword ptr [rcx+10],40
jle       short M01_L23
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rax
mov       rdx,7FFBE6DD6428
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L24
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
lea       rcx,[rbx+8]
mov       rdx,[rbp+20]
call      CORINFO_HELP_ASSIGN_REF
mov       rax,rbx
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L25
 
mov       rax,[rbp+10]
mov       rcx,[rax+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rax
mov       rdx,7FFBE6DD55C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M01_L27
 
call      qword ptr [7FFBE6DC5E48]
nop
add       rsp,50
pop       rbx
pop       rsi
pop       rbp
ret
M01_L28
 
mov       ecx,6A7
mov       rdx,7FFBE6DB5318
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6DC66B8]
int       3
M01_L29
 
push      rbp
push      rsi
push      rbx
sub       rsp,30
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+60]
cmp       qword ptr [rbp-30],0
je        short M01_L30
mov       rcx,[rbp-30]
mov       r11,7FFBE5FF1C08
call      qword ptr [r11]
M01_L30
 
nop
add       rsp,30
pop       rbx
pop       rsi
pop       rbp
ret
 
System.Collections.Frozen.FrozenDictionary.CreateFromDictionary[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.Dictionary`2)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,0D8
lea       rbp,[rsp+110]
xor       eax,eax
mov       [rbp-0A0],rax
mov       [rbp-40],rcx
mov       rbx,rcx
mov       rsi,rdx
mov       rcx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE613EC70]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Comparer()
mov       rdi,rax
mov       rcx,[rbx+10]
mov       rdx,offset MT_System.String
cmp       [rcx],rdx
jne       near ptr M02_L28
mov       rcx,[rbx+10]
mov       rcx,[rcx+28]
test      rcx,rcx
je        short M02_L00
jmp       short M02_L01
M02_L00
 
mov       rcx,rbx
mov       rdx,7FFBE6DD8688
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L01
 
call      qword ptr [7FFBE613FC30]; System.Collections.Generic.EqualityComparer`1[[System.__Canon, System.Private.CoreLib]].get_Default()
cmp       rax,rdi
jne       near ptr M02_L34
M02_L02
 
mov       rdx,rdi
mov       rcx,offset MT_System.Collections.Generic.IEqualityComparer`1[[System.String, System.Private.CoreLib]]
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       r14,rax
mov       rcx,[rbx+10]
mov       rdi,[rcx+30]
test      rdi,rdi
je        short M02_L03
jmp       short M02_L04
M02_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6DD86C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rdi,rax
M02_L04
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECA0]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Keys()
mov       rdx,rax
mov       rcx,rdi
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rdi,rax
test      rdi,rdi
je        short M02_L05
mov       rcx,offset MT_System.String[]
cmp       [rdi],rcx
je        short M02_L05
mov       rdx,rax
call      qword ptr [7FFBE6134390]; System.Runtime.CompilerServices.CastHelpers.ChkCastAny(Void*, System.Object)
mov       rdi,rax
M02_L05
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],38
jle       short M02_L06
mov       r15,[rcx+38]
test      r15,r15
je        short M02_L06
jmp       short M02_L07
M02_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6DD8788
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r15,rax
M02_L07
 
mov       rcx,rsi
call      qword ptr [7FFBE613ECE8]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].get_Values()
mov       rdx,rax
mov       rcx,r15
call      qword ptr [7FFBE65DEAC0]; System.Linq.Enumerable.ToArray[[System.__Canon, System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1)
mov       rsi,rax
mov       r15d,7FFFFFFF
xor       r13d,r13d
xor       r12d,r12d
xor       ecx,ecx
mov       eax,[rdi+8]
mov       [rbp-0A4],eax
test      eax,eax
jle       short M02_L13
M02_L08
 
mov       edx,ecx
mov       rdx,[rdi+rdx*8+10]
mov       edx,[rdx+8]
cmp       edx,r15d
jl        short M02_L15
M02_L09
 
cmp       edx,r13d
jg        short M02_L14
M02_L10
 
mov       r8d,1
shlx      rdx,r8,rdx
or        r12,rdx
inc       ecx
cmp       eax,ecx
jg        short M02_L12
M02_L11
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],40
jle       near ptr M02_L19
mov       rcx,[rcx+40]
test      rcx,rcx
je        near ptr M02_L19
jmp       near ptr M02_L20
M02_L12
 
mov       eax,[rbp-0A4]
jmp       short M02_L08
M02_L13
 
jmp       short M02_L11
M02_L14
 
mov       r13d,edx
jmp       short M02_L10
M02_L15
 
mov       r15d,edx
jmp       short M02_L09
M02_L16
 
mov       r10d,[rbp-5C]
xor       eax,eax
M02_L17
 
movzx     eax,al
mov       [rbp-60],eax
test      r15d,r15d
je        near ptr M02_L40
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
mov       [rsp+20],r13d
lea       rcx,[rbp-80]
mov       [rsp+28],rcx
lea       rcx,[rbp-0A0]
mov       edx,eax
mov       r8d,r10d
mov       r9d,r15d
call      qword ptr [7FFBE6DCF198]; System.Collections.Frozen.KeyAnalyzer.TryUseSubstring(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, AnalysisResults ByRef)
test      eax,eax
mov       eax,[rbp-60]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
je        near ptr M02_L40
M02_L18
 
movzx     eax,byte ptr [rbp-80]
mov       r13d,[rbp-7C]
mov       r15d,[rbp-78]
mov       r8d,[rbp-74]
mov       [rbp-8C],r8d
mov       r10d,[rbp-70]
mov       [rbp-90],r10d
movzx     ecx,byte ptr [rbp-7F]
mov       [rbp-57],cl
test      r15d,r15d
je        near ptr M02_L66
test      r13d,r13d
jl        near ptr M02_L42
test      eax,eax
jne       near ptr M02_L56
cmp       r15d,1
je        near ptr M02_L63
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],70
jle       near ptr M02_L21
mov       rcx,[rcx+70]
test      rcx,rcx
je        near ptr M02_L21
jmp       near ptr M02_L22
M02_L19
 
mov       rcx,rbx
mov       rdx,7FFBE6DD9498
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L20
 
mov       [rsp+20],r15d
mov       [rsp+28],r13d
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DCE8F8]; System.Collections.Frozen.LengthBucketsFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]].CreateLengthBucketsFrozenDictionaryIfAppropriate(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32)
test      rax,rax
jne       near ptr M02_L35
lea       rdx,[rdi+10]
mov       r8d,[rbp-0A4]
mov       [rbp-0C0],rdx
mov       [rbp-84],r8d
mov       rcx,179ABC002E0
xor       r10d,r10d
cmp       r14,[rcx]
sete      r10b
mov       [rbp-5C],r10d
test      r10d,r10d
je        near ptr M02_L16
mov       [rbp-0A0],rdx
mov       [rbp-98],r8d
lea       rcx,[rbp-0A0]
call      qword ptr [7FFBE6DCF1C8]
mov       rdx,[rbp-0C0]
mov       r8d,[rbp-84]
mov       r10d,[rbp-5C]
jmp       near ptr M02_L17
M02_L21
 
mov       rcx,rbx
mov       rdx,7FFBE6E19A30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L22
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF4480]; System.Collections.Frozen.OrdinalStringFrozenDictionary`1[[System.__Canon, System.Private.CoreLib]]..ctor(System.String[], System.__Canon[], System.Collections.Generic.IEqualityComparer`1, Int32, Int32, Int32, Int32)
mov       rax,r12
M02_L23
 
mov       r12,rax
M02_L24
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L25
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L25
jmp       short M02_L26
M02_L25
 
mov       rcx,rbx
mov       rdx,7FFBE6DDA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L26
 
mov       rax,r12
test      rax,rax
je        short M02_L27
cmp       [rax],rcx
je        short M02_L27
mov       rdx,r12
call      qword ptr [7FFBE61343F0]; System.Runtime.CompilerServices.CastHelpers.ChkCastClassSpecial(Void*, System.Object)
M02_L27
 
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L28
 
mov       ecx,[rsi+38]
sub       ecx,[rsi+40]
cmp       ecx,4
jg        short M02_L31
mov       rcx,[rbx+10]
mov       rcx,[rcx+20]
test      rcx,rcx
je        short M02_L29
jmp       short M02_L30
M02_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6DD8518
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L30
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
call      qword ptr [7FFBE6DCDE90]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L31
 
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M02_L32
jmp       short M02_L33
M02_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6DD7DD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L33
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rcx,rbx
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6DCD2C0]
mov       rax,rbx
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L34
 
mov       rcx,179ABC002D8
cmp       rdi,[rcx]
je        near ptr M02_L02
mov       rcx,179ABC002E0
cmp       rdi,[rcx]
jne       near ptr M02_L28
jmp       near ptr M02_L02
M02_L35
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],50
jle       short M02_L37
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M02_L36
jmp       short M02_L39
M02_L36
 
mov       [rbp-0B0],rax
jmp       short M02_L38
M02_L37
 
mov       [rbp-0B0],rax
M02_L38
 
mov       rcx,rbx
mov       rdx,7FFBE6DDA568
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
mov       rax,[rbp-0B0]
M02_L39
 
mov       rdx,rax
call      qword ptr [7FFBE61343D8]; System.Runtime.CompilerServices.CastHelpers.ChkCastClass(Void*, System.Object)
nop
add       rsp,0D8
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M02_L40
 
mov       rcx,179ABC12C10
mov       r9,[rcx]
mov       [rbp-0C8],rdx
mov       [rbp-88],r8d
mov       [rbp-64],eax
mov       [rbp-68],r10d
test      r9,r9
jne       short M02_L41
mov       rcx,offset MT_System.Collections.Frozen.KeyAnalyzer+GetSpan
call      CORINFO_HELP_NEWSFAST
mov       r9,rax
mov       [rbp-0B8],r9
mov       rdx,179ABC12C08
mov       rdx,[rdx]
mov       rcx,r9
mov       r8,offset System.Collections.Frozen.KeyAnalyzer+<>c.b__0_0(System.String, Int32, Int32)
call      qword ptr [7FFBE6134210]; System.MulticastDelegate.CtorClosed(System.Object, IntPtr)
mov       rcx,179ABC12C10
mov       rdx,[rbp-0B8]
call      CORINFO_HELP_ASSIGN_REF
mov       r9,[rbp-0B8]
M02_L41
 
mov       rdx,[rbp-0C8]
mov       [rbp-0A0],rdx
mov       r8d,[rbp-88]
mov       [rbp-98],r8d
mov       [rsp+20],r15d
mov       [rsp+28],r13d
xor       edx,edx
mov       [rsp+30],edx
mov       [rsp+38],edx
mov       [rsp+40],r9
lea       rdx,[rbp-0A0]
movzx     r8d,byte ptr [rbp-64]
movzx     r9d,byte ptr [rbp-68]
lea       rcx,[rbp-80]
call      qword ptr [7FFBE6DCF1B0]; System.Collections.Frozen.KeyAnalyzer.CreateAnalysisResults(System.ReadOnlySpan`1, Boolean, Boolean, Int32, Int32, Int32, Int32, GetSpan)
jmp       near ptr M02_L18
M02_L42
 
test      eax,eax
je        near ptr M02_L49
cmp       byte ptr [rbp-57],0
jne       short M02_L45
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],0A0
jle       short M02_L43
mov       rcx,[rcx+0A0]
test      rcx,rcx
je        short M02_L43
jmp       short M02_L44
M02_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6E1CF68
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L44
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DFF330]
jmp       short M02_L48
M02_L45
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],98
jle       short M02_L46
mov       rcx,[rcx+98]
test      rcx,rcx
je        short M02_L46
jmp       short M02_L47
M02_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6E1C6E0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L47
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DFE8B0]
M02_L48
 
jmp       near ptr M02_L24
M02_L49
 
cmp       r15d,1
je        short M02_L52
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],90
jle       short M02_L50
mov       rcx,[rcx+90]
test      rcx,rcx
je        short M02_L50
jmp       short M02_L51
M02_L50
 
mov       rcx,rbx
mov       rdx,7FFBE6E1BC50
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L51
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DFDE30]
jmp       short M02_L55
M02_L52
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],88
jle       short M02_L53
mov       rcx,[rcx+88]
test      rcx,rcx
je        short M02_L53
jmp       short M02_L54
M02_L53
 
mov       rcx,rbx
mov       rdx,7FFBE6E1B3C8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L54
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DFD3B0]
M02_L55
 
jmp       near ptr M02_L24
M02_L56
 
cmp       byte ptr [rbp-57],0
jne       short M02_L59
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],80
jle       short M02_L57
mov       rcx,[rcx+80]
test      rcx,rcx
je        short M02_L57
jmp       short M02_L58
M02_L57
 
mov       rcx,rbx
mov       rdx,7FFBE6E1AB40
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L58
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DFC930]
jmp       short M02_L62
M02_L59
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],78
jle       short M02_L60
mov       rcx,[rcx+78]
test      rcx,rcx
je        short M02_L60
jmp       short M02_L61
M02_L60
 
mov       rcx,rbx
mov       rdx,7FFBE6E1A2B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L61
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       eax,[rbp-8C]
mov       [rsp+20],eax
mov       r10d,[rbp-90]
mov       [rsp+28],r10d
mov       [rsp+30],r13d
mov       [rsp+38],r15d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF7C30]
M02_L62
 
jmp       near ptr M02_L24
M02_L63
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],68
jle       short M02_L64
mov       rcx,[rcx+68]
test      rcx,rcx
je        short M02_L64
jmp       short M02_L65
M02_L64
 
mov       rcx,rbx
mov       rdx,7FFBE6DDC1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L65
 
call      CORINFO_HELP_NEWSFAST
mov       r12,rax
mov       r15d,[rbp-8C]
mov       [rsp+20],r15d
mov       r15d,[rbp-90]
mov       [rsp+28],r15d
mov       [rsp+30],r13d
mov       rcx,r12
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF6730]
mov       rax,r12
jmp       near ptr M02_L23
M02_L66
 
test      eax,eax
je        near ptr M02_L73
cmp       byte ptr [rbp-57],0
jne       short M02_L69
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],60
jle       short M02_L67
mov       rcx,[rcx+60]
test      rcx,rcx
je        short M02_L67
jmp       short M02_L68
M02_L67
 
mov       rcx,rbx
mov       rdx,7FFBE6DDB7A8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L68
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF5C80]
jmp       short M02_L72
M02_L69
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],58
jle       short M02_L70
mov       rcx,[rcx+58]
test      rcx,rcx
je        short M02_L70
jmp       short M02_L71
M02_L70
 
mov       rcx,rbx
mov       rdx,7FFBE6DDAF10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L71
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF51B8]
M02_L72
 
mov       r12,r15
jmp       near ptr M02_L24
M02_L73
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+10],48
jle       short M02_L74
mov       rcx,[rcx+48]
test      rcx,rcx
je        short M02_L74
jmp       short M02_L75
M02_L74
 
mov       rcx,rbx
mov       rdx,7FFBE6DDA558
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
M02_L75
 
call      CORINFO_HELP_NEWSFAST
mov       r15,rax
mov       r13d,[rbp-8C]
mov       [rsp+20],r13d
mov       r13d,[rbp-90]
mov       [rsp+28],r13d
mov       [rsp+30],r12
mov       rcx,r15
mov       rdx,rdi
mov       r8,rsi
mov       r9,r14
call      qword ptr [7FFBE6DF45B8]
mov       r12,r15
jmp       near ptr M02_L24
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,28F6A812C30
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6C15650]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,28F6A801FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,28F6A812C38
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6C17660]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6C1CCA8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C15290]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6C15020]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6BFDD08
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C17D98]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C2B418
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C2B270
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6C17600]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFBE6BFDD08
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C17D98]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6C17750]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFBE6011100
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6C16940]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6C2B430
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C2B250
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6C1C1C8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C29D38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6BFDD08
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C17D98]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFBE6011108
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE6011108
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
je        short M02_L02
M02_L01
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L02
 
test      rsi,rsi
je        short M02_L03
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L04
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6C16568]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L03
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C17660]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C17660]
mov       byte ptr [rbx+1C],1
jmp       short M02_L01
M02_L04
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L03
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,2CFFC7D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1E3E2410C38
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6C06AA8]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1E3E6401FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1E3E2410C40
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6C0CBB8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0E1A8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C066E8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6C06478]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6BF3420
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D2F0]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C25860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C256B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6C0CB58]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFBE6BF3420
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D2F0]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6C0CCA8]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFBE5FF0FE0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6C07D98]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6C25878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C25698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6C0D6C8]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C24180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6BF3420
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D2F0]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFBE5FF0FE8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE5FF0FE8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6C079C0]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0CBB8]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0CBB8]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,22474330008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,18F42012C30
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6C069E8]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,18F42001FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,18F42012C38
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6C0CA08]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0DFF8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C06628]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6C063B8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6C11DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D140]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C35860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C356B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6C0C9A8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFBE6C11DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D140]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6C0CAF8]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFBE6000FE0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6C07CD8]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6C35878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C35698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6C0D518]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C34180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6C11DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0D140]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFBE6000FE8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE6000FE8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6C07900]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0CA08]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C0CA08]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,1CFD3DB0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,1B63AC10C38
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6BF69E8]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,1B63EC01FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,1B63AC10C40
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6BFCA08]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6BFDFF8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6BF6628]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6BF63B8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6C035C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6BFD140]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L20
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C25860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
nop       word ptr [rax+rax]
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C256B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L11
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L15
mov       edx,[r8+18]
cmp       eax,edx
je        short M01_L10
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6BFC9A8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
jmp       near ptr M01_L19
M01_L10
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       short M01_L16
M01_L11
 
mov       ecx,717
mov       rdx,7FFBE6C035C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6BFD140]
int       3
M01_L12
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6BFCAF8]
mov       r15,rax
jmp       near ptr M01_L19
M01_L13
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L16
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L18
M01_L17
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6BF7CD8]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L12
jmp       near ptr M01_L09
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFBE6C25878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L17
M01_L19
 
cmp       dword ptr [rbp-78],1
jne       short M01_L20
mov       rax,[rbp-0E8]
inc       r12d
M01_L20
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L22
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L13
M01_L21
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       short M01_L23
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       near ptr M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L21
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L22
 
mov       rcx,rax
mov       r11,7FFBE5FF0FE0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       short M01_L25
M01_L23
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C25698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6BFD518]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C24180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6C035C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6BFD140]
int       3
M01_L30
 
mov       rax,[rbp-0E8]
mov       rcx,rax
mov       r11,7FFBE5FF0FE8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE5FF0FE8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6BF7900]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6BFCA08]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6BFCA08]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,1F6CCC40008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,169D0810C38
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6C269E8]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,169D4801FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,169D0810C40
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6C2CA08]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2DFF8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C26628]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6C263B8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6C31DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2D140]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L20
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C55860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
nop       word ptr [rax+rax]
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C556B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L11
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L15
mov       edx,[r8+18]
cmp       eax,edx
je        short M01_L10
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6C2C9A8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
jmp       near ptr M01_L19
M01_L10
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       short M01_L16
M01_L11
 
mov       ecx,717
mov       rdx,7FFBE6C31DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2D140]
int       3
M01_L12
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L13
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6C2CAF8]
mov       r15,rax
jmp       near ptr M01_L19
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L16
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L18
M01_L17
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6C27CD8]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L13
jmp       near ptr M01_L09
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFBE6C55878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L17
M01_L19
 
cmp       dword ptr [rbp-78],1
jne       short M01_L20
mov       rax,[rbp-0E8]
inc       r12d
M01_L20
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L22
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L12
M01_L21
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       short M01_L23
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       near ptr M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L21
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L22
 
mov       rcx,rax
mov       r11,7FFBE6020FE0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       short M01_L25
M01_L23
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C55698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6C2D518]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C54180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6C31DE0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2D140]
int       3
M01_L30
 
mov       rax,[rbp-0E8]
mov       rcx,rax
mov       r11,7FFBE6020FE8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE6020FE8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6C27900]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2CA08]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2CA08]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,1AA62590008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,12FDFC10C38
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6C26778]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,12FE3C01FE8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,12FDFC10C40
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6C2C7F8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2DDE8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C263B8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6C26148]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6C321D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2CF30]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       rdi,rcx
mov       rbx,rdx
mov       r14,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      r14,r14
je        near ptr M01_L29
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L24
M01_L01
 
mov       rcx,r14
call      qword ptr [r11]
mov       [rbp-0E8],rax
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r14,[rcx+88]
test      r14,r14
je        short M01_L03
M01_L02
 
jmp       near ptr M01_L11
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6C55860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r14,rax
jmp       short M01_L02
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6C556B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L06
M01_L05
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        short M01_L04
M01_L06
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rcx,[rbp-50]
test      rcx,rcx
je        near ptr M01_L15
mov       rcx,[r13+8]
mov       r11,r14
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       [rbp-54],eax
cmp       [r15],r15b
mov       r8,r15
M01_L07
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L20
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L14
jle       short M01_L08
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L08
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L07
M01_L09
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6C2C798]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L10
 
cmp       dword ptr [rbp-78],1
jne       short M01_L11
mov       rax,[rbp-0E8]
inc       r12d
M01_L11
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
jne       near ptr M01_L18
lea       r8,[rax+8]
mov       [rbp-100],r8
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L12
 
mov       ecx,[r8+0C]
mov       r10,[r8]
cmp       ecx,[r10+38]
jae       near ptr M01_L19
mov       rdx,[r10+10]
lea       r10d,[rcx+1]
mov       [r8+0C],r10d
cmp       ecx,[rdx+8]
jae       short M01_L13
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L12
mov       rdx,[rcx]
mov       r10,[rcx+8]
mov       [rbp-108],r10
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L05
M01_L13
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L14
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L21
M01_L15
 
mov       ecx,717
mov       rdx,7FFBE6C321D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2CF30]
int       3
M01_L16
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6C2C8E8]
mov       r15,rax
jmp       near ptr M01_L10
M01_L17
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L18
 
mov       rcx,rax
mov       r11,7FFBE6020FE0
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L05
mov       rax,[rbp-0E8]
jmp       near ptr M01_L25
M01_L19
 
mov       rax,[rbp-0E8]
mov       ecx,[r10+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       near ptr M01_L25
M01_L20
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L21
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r8,[rbp-50]
mov       [rbp-0F0],r8
mov       r10,[rbp-48]
mov       [rbp-0F8],r10
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r9,[rcx+90]
test      r9,r9
je        short M01_L23
M01_L22
 
mov       r10,[rbp-0F8]
mov       [rsp+20],r10
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
mov       r8,r9
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,[rbp-0F0]
call      qword ptr [7FFBE6C27A68]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L16
jmp       near ptr M01_L09
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6C55878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r9,r8
jmp       near ptr M01_L22
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6C55698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L25
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L30
M01_L26
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L28
M01_L27
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6C2D308]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [rdi+8],eax
mov       rax,rdi
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6C54180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
jmp       short M01_L27
M01_L29
 
mov       ecx,40B
mov       rdx,7FFBE6C321D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2CF30]
int       3
M01_L30
 
mov       rcx,rax
mov       r11,7FFBE6020FE8
call      qword ptr [r11]
jmp       near ptr M01_L26
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L31
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L31
mov       rcx,rax
mov       r11,7FFBE6020FE8
call      qword ptr [r11]
M01_L31
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6C27690]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2C7F8]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6C2C7F8]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,170719D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,2787A412C30
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6D46E08]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,2787A401FF8
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,2787A412C38
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6D4CE58]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6D4E448]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6D46A48]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6D467D8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6D521D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6D4D590]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       r14,rcx
mov       rbx,rdx
mov       rdi,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      rdi,rdi
je        near ptr M01_L48
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L43
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-0E8],rax
test      rax,rax
je        near ptr M01_L25
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L25
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdi,[rcx+88]
test      rdi,rdi
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFBE6D75860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdi,rax
M01_L03
 
jmp       near ptr M01_L10
M01_L04
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L14
M01_L05
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L39
mov       r8,[r13+8]
mov       r11,rdi
mov       rcx,r8
mov       rdx,[rbp-50]
call      qword ptr [r11]
cmp       [r15],r15b
mov       r8,r15
M01_L06
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L15
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L13
mov       [rbp-54],eax
jle       short M01_L07
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L07
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L08
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6D4CDF8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L09
 
cmp       dword ptr [rbp-78],1
jne       short M01_L10
mov       rax,[rbp-0E8]
inc       r12d
M01_L10
 
mov       rax,[rbp-0E8]
lea       r8,[rax+8]
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L40
M01_L11
 
mov       r10d,[r8+0C]
mov       r9,[r8]
cmp       r10d,[r9+38]
jae       near ptr M01_L42
mov       r9,[r9+10]
lea       ecx,[r10+1]
mov       [r8+0C],ecx
cmp       r10d,[r9+8]
jae       short M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L11
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
mov       [rbp-100],r8
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       short M01_L16
M01_L14
 
mov       rcx,rbx
mov       rdx,7FFBE6D756B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L05
M01_L15
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L16
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r8,[rcx+90]
test      r8,r8
je        short M01_L18
mov       r10,[rbp-0F0]
mov       [rbp-54],eax
M01_L17
 
mov       r9,[rbp-0F8]
mov       [rsp+20],r9
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,r10
call      qword ptr [7FFBE6D4C138]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L41
jmp       near ptr M01_L08
M01_L18
 
mov       [rbp-54],eax
mov       rcx,rbx
mov       rdx,7FFBE6D75878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,[rbp-0F0]
jmp       near ptr M01_L17
M01_L19
 
mov       rcx,rbx
mov       rdx,7FFBE6D75860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M01_L20
 
mov       r11,rax
mov       rcx,rdi
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       edi,eax
cmp       [r15],r15b
mov       r8,r15
M01_L21
 
cmp       qword ptr [r8+8],0
je        near ptr M01_L29
mov       ecx,[r8+18]
cmp       edi,ecx
je        near ptr M01_L34
jle       short M01_L22
mov       r8,[r8+10]
jmp       short M01_L21
M01_L22
 
mov       r8,[r8+8]
jmp       short M01_L21
M01_L23
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,edi
mov       r9,r13
call      qword ptr [7FFBE6D4CDF8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L24
 
cmp       dword ptr [rbp-78],1
jne       short M01_L25
mov       rax,[rbp-0E8]
inc       r12d
M01_L25
 
mov       rax,[rbp-0E8]
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L37
lea       rcx,[rax+8]
mov       rdi,rcx
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L40
M01_L26
 
mov       r10d,[rdi+0C]
mov       r8,[rdi]
cmp       r10d,[r8+38]
jae       near ptr M01_L36
mov       r9,[r8+10]
lea       ecx,[r10+1]
mov       [rdi+0C],ecx
cmp       r10d,[r9+8]
jae       near ptr M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L26
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
M01_L27
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L32
M01_L28
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L39
mov       r8,[r13+8]
mov       rdi,r8
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rax,[rcx+88]
test      rax,rax
je        near ptr M01_L19
jmp       near ptr M01_L20
M01_L29
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L30
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r10,[rcx+90]
test      r10,r10
je        near ptr M01_L33
mov       rax,[rbp-0F0]
M01_L31
 
mov       r8,[rbp-0F8]
mov       [rsp+20],r8
mov       [rsp+28],r13
mov       r8,[r13+10]
mov       [rsp+30],r8
mov       [rsp+38],esi
lea       r8,[rbp-78]
mov       [rsp+40],r8
mov       r8,r10
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,rax
call      qword ptr [7FFBE6D4C138]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       r8,[rbp-80]
mov       [rbp-0C0],r8
cmp       qword ptr [rbp-0D0],0
je        short M01_L35
mov       rax,[rbp-0E8]
jmp       near ptr M01_L23
M01_L32
 
mov       rcx,rbx
mov       rdx,7FFBE6D756B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L28
M01_L33
 
mov       rcx,rbx
mov       rdx,7FFBE6D75878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,r8
mov       rax,[rbp-0F0]
jmp       near ptr M01_L31
M01_L34
 
mov       rax,[rbp-0E8]
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L30
M01_L35
 
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,edi
call      qword ptr [7FFBE6D4CF48]
mov       r15,rax
jmp       near ptr M01_L24
M01_L36
 
mov       rax,[rbp-0E8]
mov       ecx,[r8+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L38
M01_L37
 
mov       rcx,rax
mov       r11,7FFBE6001318
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-0E8]
M01_L38
 
test      ecx,ecx
jne       near ptr M01_L27
mov       rax,[rbp-0E8]
jmp       short M01_L44
M01_L39
 
mov       ecx,717
mov       rdx,7FFBE6D521D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6D4D590]
int       3
M01_L40
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L41
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6D4CF48]
mov       r15,rax
jmp       near ptr M01_L09
M01_L42
 
mov       rax,[rbp-0E8]
mov       ecx,[r9+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       short M01_L44
M01_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6D75698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L44
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
je        short M01_L45
mov       rcx,rax
mov       r11,7FFBE6001320
call      qword ptr [r11]
M01_L45
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L46
jmp       short M01_L47
M01_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6D74180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
M01_L47
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6D4D968]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [r14+8],eax
mov       rax,r14
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L48
 
mov       ecx,40B
mov       rdx,7FFBE6D521D0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6D4D590]
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L49
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L49
mov       rcx,rax
mov       r11,7FFBE6001320
call      qword ptr [r11]
M01_L49
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,7FFBE6D43D20
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6D47D20]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6D4CE58]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6D4CE58]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,2B90C250008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToImmutableDictionary()
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,50
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
mov       rbx,rcx
mov       r8,[rbx+280]
test      r8,r8
je        near ptr M00_L02
mov       r9,202A1812C30
mov       rsi,[r9]
cmp       dword ptr [rsi+18],0
jne       short M00_L00
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L04
mov       rcx,r8
mov       r9,offset MT_System.Collections.Immutable.ImmutableDictionary`2+Builder[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rcx],r9
je        near ptr M00_L03
M00_L00
 
mov       r9,[rsi+8]
mov       rcx,[rsi+10]
mov       [rsp+28],r9
mov       [rsp+30],rcx
mov       dword ptr [rsp+20],2
lea       r9,[rsp+28]
lea       rcx,[rsp+40]
mov       rdx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      qword ptr [7FFBE6DD6778]; System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
mov       rdi,[rsp+40]
mov       ebp,[rsi+18]
add       ebp,[rsp+48]
test      rdi,rdi
je        near ptr M00_L05
cmp       [rsi+8],rdi
je        near ptr M00_L07
cmp       qword ptr [rdi+8],0
je        near ptr M00_L05
mov       rcx,offset MT_System.Collections.Immutable.ImmutableDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rdx,[rsi+10]
test      rdx,rdx
je        near ptr M00_L06
lea       rcx,[r14+10]
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,202A1812C50
mov       rdx,[rcx]
lea       rcx,[r14+8]
call      CORINFO_HELP_ASSIGN_REF
mov       rdx,202A1812C38
mov       rdx,[rdx]
mov       rcx,rdi
call      qword ptr [7FFBE6DDC7F8]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
lea       rcx,[r14+8]
mov       rdx,rdi
call      CORINFO_HELP_ASSIGN_REF
mov       [r14+18],ebp
M00_L01
 
mov       [rsp+38],r14
mov       rsi,[rbx+18]
mov       rdx,[rsp+38]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,50
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
ret
M00_L02
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       r14,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,r14
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L03
 
cmp       [rcx],ecx
call      qword ptr [7FFBE6DDDDE8]
mov       rcx,rax
M00_L04
 
mov       r8,[rsi+10]
mov       r8,[r8+10]
mov       rdx,[rsi+10]
mov       rdx,[rdx+8]
cmp       [rcx],ecx
call      qword ptr [7FFBE6DD63B8]
mov       r14,rax
jmp       near ptr M00_L01
M00_L05
 
mov       rcx,rsi
call      qword ptr [7FFBE6DD6148]
mov       r14,rax
jmp       near ptr M00_L01
M00_L06
 
mov       ecx,6DB
mov       rdx,7FFBE6DC4E28
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6DDCF30]
int       3
M00_L07
 
mov       r14,rsi
jmp       near ptr M00_L01
 
System.Collections.Immutable.ImmutableDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, MutationInput, KeyCollisionBehavior)
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,128
vzeroupper
lea       rbp,[rsp+160]
vxorps    xmm4,xmm4,xmm4
mov       rax,0FFFFFFFFFFFFFF70
M01_L00
 
vmovdqa   xmmword ptr [rbp+rax-40],xmm4
vmovdqa   xmmword ptr [rbp+rax-30],xmm4
vmovdqa   xmmword ptr [rbp+rax-20],xmm4
add       rax,30
jne       short M01_L00
mov       [rbp-118],rsp
mov       [rbp-40],rdx
mov       r14,rcx
mov       rbx,rdx
mov       rdi,r8
mov       esi,[rbp+30]
mov       r15,[r9]
mov       r13,[r9+8]
test      rdi,rdi
je        near ptr M01_L48
xor       r12d,r12d
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+68]
test      r11,r11
je        near ptr M01_L43
M01_L01
 
mov       rcx,rdi
call      qword ptr [r11]
mov       [rbp-0E8],rax
test      rax,rax
je        near ptr M01_L25
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L25
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdi,[rcx+88]
test      rdi,rdi
je        short M01_L02
jmp       short M01_L03
M01_L02
 
mov       rcx,rbx
mov       rdx,7FFBE6DF5860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdi,rax
M01_L03
 
jmp       near ptr M01_L10
M01_L04
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L14
M01_L05
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L39
mov       r8,[r13+8]
mov       r11,rdi
mov       rcx,r8
mov       rdx,[rbp-50]
call      qword ptr [r11]
cmp       [r15],r15b
mov       r8,r15
M01_L06
 
mov       rcx,[r8+8]
test      rcx,rcx
je        near ptr M01_L15
mov       edx,[r8+18]
cmp       eax,edx
je        near ptr M01_L13
mov       [rbp-54],eax
jle       short M01_L07
mov       r8,[r8+10]
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L07
 
mov       r8,rcx
mov       eax,[rbp-54]
jmp       short M01_L06
M01_L08
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,[rbp-54]
mov       r9,r13
call      qword ptr [7FFBE6DDC798]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L09
 
cmp       dword ptr [rbp-78],1
jne       short M01_L10
mov       rax,[rbp-0E8]
inc       r12d
M01_L10
 
mov       rax,[rbp-0E8]
lea       r8,[rax+8]
mov       ecx,[r8+8]
mov       rdx,[r8]
cmp       ecx,[rdx+44]
jne       near ptr M01_L40
M01_L11
 
mov       r10d,[r8+0C]
mov       r9,[r8]
cmp       r10d,[r9+38]
jae       near ptr M01_L42
mov       r9,[r9+10]
lea       ecx,[r10+1]
mov       [r8+0C],ecx
cmp       r10d,[r9+8]
jae       short M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L11
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
mov       [rbp-100],r8
lea       rcx,[r8+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-100]
lea       rcx,[rax+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L04
M01_L12
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L13
 
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       short M01_L16
M01_L14
 
mov       rcx,rbx
mov       rdx,7FFBE6DF56B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L05
M01_L15
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L16
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r8,[rcx+90]
test      r8,r8
je        short M01_L18
mov       r10,[rbp-0F0]
mov       [rbp-54],eax
M01_L17
 
mov       r9,[rbp-0F8]
mov       [rsp+20],r9
mov       [rsp+28],r13
mov       rcx,[r13+10]
mov       [rsp+30],rcx
mov       [rsp+38],esi
lea       rcx,[rbp-78]
mov       [rsp+40],rcx
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,r10
call      qword ptr [7FFBE6DD7A68]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       rcx,[rbp-80]
mov       [rbp-0C0],rcx
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L41
jmp       near ptr M01_L08
M01_L18
 
mov       [rbp-54],eax
mov       rcx,rbx
mov       rdx,7FFBE6DF5878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,[rbp-0F0]
jmp       near ptr M01_L17
M01_L19
 
mov       rcx,rbx
mov       rdx,7FFBE6DF5860
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
M01_L20
 
mov       r11,rax
mov       rcx,rdi
mov       rdx,[rbp-50]
call      qword ptr [r11]
mov       edi,eax
cmp       [r15],r15b
mov       r8,r15
M01_L21
 
cmp       qword ptr [r8+8],0
je        near ptr M01_L32
mov       ecx,[r8+18]
cmp       edi,ecx
je        near ptr M01_L35
jle       short M01_L22
mov       r8,[r8+10]
jmp       short M01_L21
M01_L22
 
mov       r8,[r8+8]
jmp       short M01_L21
M01_L23
 
lea       r8,[rbp-0D8]
mov       [rsp+20],r8
lea       r8,[rbp-0E0]
mov       [rsp+28],r8
lea       r8,[rbp-0D0]
mov       rcx,r15
mov       edx,edi
mov       r9,r13
call      qword ptr [7FFBE6DDC798]; System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].SetItem(Int32, HashBucket, System.Collections.Generic.IEqualityComparer`1>, Boolean ByRef, Boolean ByRef)
mov       r15,rax
M01_L24
 
cmp       dword ptr [rbp-78],1
jne       short M01_L25
mov       rax,[rbp-0E8]
inc       r12d
M01_L25
 
mov       rax,[rbp-0E8]
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
jne       near ptr M01_L37
lea       rcx,[rax+8]
mov       rdi,rcx
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L40
M01_L26
 
mov       r10d,[rdi+0C]
mov       r8,[rdi]
cmp       r10d,[r8+38]
jae       near ptr M01_L36
mov       r9,[r8+10]
lea       ecx,[r10+1]
mov       [rdi+0C],ecx
cmp       r10d,[r9+8]
jae       near ptr M01_L12
mov       ecx,r10d
lea       rcx,[rcx+rcx*2]
lea       r11,[r9+rcx*8+10]
cmp       dword ptr [r11+14],0FFFFFFFF
jl        short M01_L26
mov       rdx,[r11]
mov       rcx,[r11+8]
mov       [rbp-108],rcx
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,[rbp-108]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
M01_L27
 
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r11,[rcx+70]
test      r11,r11
je        near ptr M01_L31
M01_L28
 
lea       rdx,[rbp-50]
mov       rcx,[rbp-0E8]
call      qword ptr [r11]
mov       rax,[rbp-50]
test      rax,rax
je        near ptr M01_L39
mov       r8,[r13+8]
mov       rdi,r8
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rax,[rcx+88]
test      rax,rax
je        near ptr M01_L19
jmp       near ptr M01_L20
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6DF5878
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r8,rax
mov       r10,r8
mov       rax,[rbp-0F0]
M01_L30
 
mov       r8,[rbp-0F8]
mov       [rsp+20],r8
mov       [rsp+28],r13
mov       r8,[r13+10]
mov       [rsp+30],r8
mov       [rsp+38],esi
lea       r8,[rbp-78]
mov       [rsp+40],r8
mov       r8,r10
lea       rcx,[rbp-70]
lea       rdx,[rbp-90]
mov       r9,rax
call      qword ptr [7FFBE6DD7A68]; System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Add(System.__Canon, System.__Canon, System.Collections.Generic.IEqualityComparer`1>, System.Collections.Generic.IEqualityComparer`1, KeyCollisionBehavior, OperationResult ByRef)
vmovdqu   xmm0,xmmword ptr [rbp-90]
vmovdqu   xmmword ptr [rbp-0D0],xmm0
mov       r8,[rbp-80]
mov       [rbp-0C0],r8
cmp       qword ptr [rbp-0D0],0
je        near ptr M01_L34
mov       rax,[rbp-0E8]
jmp       near ptr M01_L23
M01_L31
 
mov       rcx,rbx
mov       rdx,7FFBE6DF56B8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L28
M01_L32
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0B8],xmm0
vmovdqu   xmmword ptr [rbp-0B0],xmm0
M01_L33
 
vmovdqu   xmm0,xmmword ptr [rbp-0B8]
vmovdqu   xmmword ptr [rbp-70],xmm0
mov       rcx,[rbp-0A8]
mov       [rbp-60],rcx
mov       r10,[rbp-50]
mov       [rbp-0F0],r10
mov       r9,[rbp-48]
mov       [rbp-0F8],r9
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       r10,[rcx+90]
test      r10,r10
je        near ptr M01_L29
mov       rax,[rbp-0F0]
jmp       near ptr M01_L30
M01_L34
 
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,edi
call      qword ptr [7FFBE6DDC8E8]
mov       r15,rax
jmp       near ptr M01_L24
M01_L35
 
mov       rax,[rbp-0E8]
vmovdqu   xmm0,xmmword ptr [r8+20]
vmovdqu   xmmword ptr [rbp-0B8],xmm0
mov       rcx,[r8+30]
mov       [rbp-0A8],rcx
jmp       near ptr M01_L33
M01_L36
 
mov       rax,[rbp-0E8]
mov       ecx,[r8+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       short M01_L38
M01_L37
 
mov       rcx,rax
mov       r11,7FFBE6001BB0
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-0E8]
M01_L38
 
test      ecx,ecx
jne       near ptr M01_L27
mov       rax,[rbp-0E8]
jmp       short M01_L44
M01_L39
 
mov       ecx,717
mov       rdx,7FFBE6DC4E28
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6DDCF30]
int       3
M01_L40
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L41
 
mov       eax,[rbp-54]
lea       r8,[rbp-0D8]
mov       rcx,r15
mov       edx,eax
call      qword ptr [7FFBE6DDC8E8]
mov       r15,rax
jmp       near ptr M01_L09
M01_L42
 
mov       rax,[rbp-0E8]
mov       ecx,[r9+38]
inc       ecx
mov       [r8+0C],ecx
xor       ecx,ecx
mov       [r8+18],rcx
mov       [r8+20],rcx
jmp       short M01_L44
M01_L43
 
mov       rcx,rbx
mov       rdx,7FFBE6DF5698
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L01
M01_L44
 
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       [rax],rcx
je        short M01_L45
mov       rcx,rax
mov       r11,7FFBE6001BB8
call      qword ptr [r11]
M01_L45
 
vxorps    xmm0,xmm0,xmm0
vmovdqu   xmmword ptr [rbp-0A0],xmm0
mov       rcx,[rbx+30]
mov       rcx,[rcx]
mov       rdx,[rcx+50]
test      rdx,rdx
je        short M01_L46
jmp       short M01_L47
M01_L46
 
mov       rcx,rbx
mov       rdx,7FFBE6DF4180
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rdx,rax
M01_L47
 
lea       rcx,[rbp-0A0]
mov       r8,r15
mov       r9d,r12d
call      qword ptr [7FFBE6DDD308]; System.Collections.Immutable.ImmutableDictionary`2+MutationResult[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Immutable.SortedInt32KeyNode`1>, Int32)
mov       rdx,[rbp-0A0]
mov       rcx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       eax,[rbp-98]
mov       [r14+8],eax
mov       rax,r14
add       rsp,128
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
M01_L48
 
mov       ecx,40B
mov       rdx,7FFBE6DC4E28
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6DDCF30]
int       3
push      rbp
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
mov       rbp,[rcx+48]
mov       [rsp+48],rbp
lea       rbp,[rbp+160]
cmp       qword ptr [rbp-0E8],0
je        short M01_L49
mov       rcx,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
mov       rax,[rbp-0E8]
cmp       [rax],rcx
je        short M01_L49
mov       rcx,rax
mov       r11,7FFBE6001BB8
call      qword ptr [r11]
M01_L49
 
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
pop       rbp
ret
 
System.Collections.Immutable.SortedInt32KeyNode`1[[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Collections.Immutable]].Freeze(System.Action`1>>)
M02_L00
 
push      rsi
push      rbx
sub       rsp,58
vzeroupper
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+20],xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
vmovdqa   xmmword ptr [rsp+40],xmm4
xor       eax,eax
mov       [rsp+50],rax
mov       rbx,rcx
mov       rsi,rdx
cmp       byte ptr [rbx+1C],0
jne       short M02_L02
test      rsi,rsi
je        short M02_L01
mov       ecx,[rbx+18]
vmovdqu   xmm0,xmmword ptr [rbx+20]
vmovdqu   xmmword ptr [rsp+20],xmm0
mov       rdx,[rbx+30]
mov       [rsp+30],rdx
mov       [rsp+38],ecx
vmovdqu   xmm0,xmmword ptr [rsp+20]
vmovdqu   xmmword ptr [rsp+40],xmm0
mov       rcx,[rsp+30]
mov       [rsp+50],rcx
mov       rcx,offset System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
cmp       [rsi+18],rcx
jne       short M02_L03
mov       rcx,[rsi+8]
lea       rdx,[rsp+38]
call      qword ptr [7FFBE6DD7690]; System.Collections.Immutable.ImmutableDictionary`2+<>c[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].<.cctor>b__107_0(System.Collections.Generic.KeyValuePair`2>)
M02_L01
 
mov       rcx,[rbx+8]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6DDC7F8]
mov       rcx,[rbx+10]
mov       rdx,rsi
cmp       [rcx],ecx
call      qword ptr [7FFBE6DDC7F8]
mov       byte ptr [rbx+1C],1
M02_L02
 
add       rsp,58
pop       rbx
pop       rsi
ret
M02_L03
 
lea       rdx,[rsp+38]
mov       rcx,[rsi+8]
call      qword ptr [rsi+18]
jmp       short M02_L01
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M03_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M03_L02
test      rbx,rbx
je        short M03_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M03_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M03_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M03_L02
 
test      rbx,rbx
je        short M03_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M03_L04
M03_L03
 
mov       rax,243335C0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M03_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,1C177001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C14DF8]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5490
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C14E28]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C27C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C27C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C161C0]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C161D8]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6011078
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C14E10]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6BFEDC0
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C16A48]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6011080
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,20209020008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,29898C01FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C36970]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C369A0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C52010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C52030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C37D38]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C37D50]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6021080
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C36988]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6C23420
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C3C600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6021088
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2D9269A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,28913401FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C268B0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C268E0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C52010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C52030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C78]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C90]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6021078
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C268C8]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6C335C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2C600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6021080
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2C9A5470008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,219A4001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C268B0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A90
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C268E0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C52010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C52030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C78]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C90]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6021078
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C268C8]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6C335C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2C600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6021080
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,25A31DA0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,24A1A001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C268B0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A60
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C268E0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C52010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C52030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C78]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C27C90]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6021078
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C268C8]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6C335C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C2C600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6021080
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,28AABE10008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,2C7E9001FD8
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6C068B0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6C068E0]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6C32010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6C32030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C07C78]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C07C90]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6001080
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6C068C8]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6C135C8
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6C0C600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6001088
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,3087B0A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,1BD1D401FE0
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6CDFE28]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5AF8
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6CDFE58]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6D32010
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6D32030
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6D25278]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6D25290]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE6001378
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6CDFE40]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6D00A80
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6D25B00]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE6001380
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1FDAF350008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyCollection()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rdx,[rbx+280]
test      rdx,rdx
je        short M00_L00
mov       rcx,22FE0C02010
mov       rcx,[rcx]
xor       r8d,r8d
xor       r9d,r9d
call      qword ptr [7FFBE6DC6640]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
mov       [rsp+20],rax
mov       rbx,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].AddRange(System.Collections.Generic.IEnumerable`1>, Boolean, Boolean)
push      rbp
push      rsi
push      rbx
sub       rsp,80
lea       rbp,[rsp+90]
xor       eax,eax
mov       [rbp-48],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
vmovdqa   xmmword ptr [rbp-30],xmm4
mov       [rbp-58],rsp
mov       [rbp-18],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       esi,r8d
cmp       [rcx],ecx
test      rbx,rbx
je        near ptr M01_L09
mov       r8,[rcx+8]
cmp       qword ptr [r8+18],0
jne       short M01_L00
test      r9b,r9b
jne       short M01_L00
movzx     r8d,sil
mov       rdx,rbx
call      qword ptr [7FFBE6DC6670]; System.Collections.Immutable.ImmutableSortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FillFromEmpty(System.Collections.Generic.IEnumerable`1>, Boolean)
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L00
 
mov       rdx,[rcx+8]
mov       [rbp-48],rdx
mov       edx,[rcx+20]
mov       [rbp-1C],edx
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+38]
test      r11,r11
je        short M01_L01
jmp       short M01_L02
M01_L01
 
mov       rcx,rdx
mov       rdx,7FFBE6DD7C30
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L02
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-50],rax
jmp       near ptr M01_L08
M01_L03
 
mov       rcx,[rbp+10]
mov       rdx,[rcx]
mov       rax,[rdx+30]
mov       rax,[rax]
mov       r11,[rax+40]
test      r11,r11
je        short M01_L04
jmp       short M01_L05
M01_L04
 
mov       rcx,rdx
mov       rdx,7FFBE6DD7C50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L05
 
lea       rdx,[rbp-30]
mov       rcx,[rbp-50]
call      qword ptr [r11]
xor       r9d,r9d
mov       [rbp-40],r9d
test      sil,sil
jne       short M01_L06
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-38]
mov       [rsp+28],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6DC7A08]
jmp       short M01_L07
M01_L06
 
mov       rdx,[rbp-30]
mov       rcx,[rbp+10]
mov       r9,[rcx+18]
mov       [rsp+20],r9
lea       r9,[rbp-40]
mov       [rsp+28],r9
lea       r9,[rbp-38]
mov       [rsp+30],r9
mov       r9,[rcx+10]
mov       rcx,[rbp-48]
mov       r8,[rbp-28]
cmp       [rcx],ecx
call      qword ptr [7FFBE6DC7A20]
M01_L07
 
cmp       byte ptr [rbp-38],0
je        short M01_L08
mov       [rbp-48],rax
cmp       byte ptr [rbp-40],0
jne       short M01_L08
mov       ecx,[rbp-1C]
inc       ecx
mov       [rbp-1C],ecx
M01_L08
 
mov       rcx,[rbp-50]
mov       r11,7FFBE5FF1C30
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L03
mov       rcx,rsp
call      M01_L10
nop
mov       rcx,[rbp+10]
mov       rdx,[rbp-48]
mov       r8d,[rbp-1C]
call      qword ptr [7FFBE6DC6658]
nop
add       rsp,80
pop       rbx
pop       rsi
pop       rbp
ret
M01_L09
 
mov       ecx,40B
mov       rdx,7FFBE6DB4040
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE6DCC600]
int       3
M01_L10
 
push      rbp
push      rsi
push      rbx
sub       rsp,40
mov       rbp,[rcx+38]
mov       [rsp+38],rbp
lea       rbp,[rbp+90]
cmp       qword ptr [rbp-50],0
je        short M01_L11
mov       rcx,[rbp-50]
mov       r11,7FFBE5FF1C38
call      qword ptr [r11]
M01_L11
 
nop
add       rsp,40
pop       rbx
pop       rsi
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2706EB90008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1D59E860008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,259ADFA0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,2D60A6D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,225BFD60008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1C5D4190008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A80
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1FA2DC00008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,1A7F76D0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToReadOnlyDictionary()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.ObjectModel.ReadOnlyDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
lea       rcx,[rdi+8]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M01_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M01_L02
test      rbx,rbx
je        short M01_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M01_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M01_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M01_L02
 
test      rbx,rbx
je        short M01_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M01_L04
M01_L03
 
mov       rax,24C73AB0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M01_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C24558]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C25218]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C260A0]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DD4248
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DD4260
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD44E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DD4508
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C33430]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6021000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DD4528
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DD4248
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DD44E8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C260D0]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,267B2EF0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C26010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C26CD0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C2C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DE5A20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5A38
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5CC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5CE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C38FE8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6021000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5D00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5A20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DE5CC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C2C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,287B6280008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C15DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C16A60]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C178E8]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DC5B88
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5BA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5E28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5E48
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C273A0]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5E68
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5B88
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5E28
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C17918]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2D1C75A0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C16010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C16CD0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C1C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DC5A40
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5A58
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5CE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5D00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C28FE8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5D20
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5A40
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5CE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C1C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2960E030008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C16010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C16CD0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C1C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DC5C00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5C18
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5EA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5EC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C28FE8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5EE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5C00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DC5EA0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C1C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,29526160008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6C26010]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6C26CD0]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6C2C018]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6DD5FC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5FE0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6DD6268
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6DD6288
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6C381C8]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6021000
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6DD62A8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63D3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63F66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6DD5FC8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6164360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6DD6268
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6C2C048]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,269E6F00008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6D66F70]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5490
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6D67C30]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6D6CE10]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6E3B9C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B9E0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BC68
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BC88
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6D5F360]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6011320
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BCA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63C3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63E66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6E3B9C8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6154360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BC68
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6D6CE40]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6011328
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6011328
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,198F31B0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.ToSortedDictionaryTest()
push      rdi
push      rsi
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
test      rsi,rsi
je        short M00_L00
mov       rcx,offset MT_System.Collections.Generic.SortedDictionary`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
call      CORINFO_HELP_NEWSFAST
mov       rdi,rax
mov       rcx,rdi
mov       rdx,rsi
xor       r8d,r8d
call      qword ptr [7FFBE6DD5DA0]; System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
mov       [rsp+28],rdi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
pop       rsi
pop       rdi
ret
M00_L00
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Collections.Generic.SortedDictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IDictionary`2, System.Collections.Generic.IComparer`1)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,58
vzeroupper
lea       rbp,[rsp+80]
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rbp-50],xmm4
vmovdqa   xmmword ptr [rbp-40],xmm4
mov       [rbp-60],rsp
mov       [rbp-30],rcx
mov       [rbp+10],rcx
mov       rbx,rdx
mov       rsi,r8
test      rbx,rbx
je        near ptr M01_L21
mov       rdi,[rcx]
mov       rdx,rdi
mov       rax,[rdx+30]
mov       rax,[rax]
mov       rax,[rax+40]
test      rax,rax
je        near ptr M01_L05
M01_L00
 
mov       rcx,rax
call      CORINFO_HELP_NEWSFAST
mov       r14,rax
mov       rcx,r14
mov       rdx,rsi
call      qword ptr [7FFBE6DD6A60]; System.Collections.Generic.SortedDictionary`2+KeyValuePairComparer[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1)
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+48]
test      rcx,rcx
je        near ptr M01_L06
M01_L01
 
mov       rdx,rbx
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
mov       rsi,rax
test      rsi,rsi
jne       near ptr M01_L22
M01_L02
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L07
M01_L03
 
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
mov       rcx,rsi
mov       rdx,r14
call      qword ptr [7FFBE6DD78E8]; System.Collections.Generic.SortedSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]]..ctor(System.Collections.Generic.IComparer`1>)
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rsi
call      CORINFO_HELP_ASSIGN_REF
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+58]
test      r11,r11
je        short M01_L08
M01_L04
 
mov       rcx,rbx
call      qword ptr [r11]
mov       [rbp-58],rax
jmp       short M01_L09
M01_L05
 
mov       rcx,rdx
mov       rdx,7FFBE6E3BDA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
jmp       near ptr M01_L00
M01_L06
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BDC0
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L01
M01_L07
 
mov       rcx,rdi
mov       rdx,7FFBE6E3C048
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
jmp       near ptr M01_L03
M01_L08
 
mov       rcx,rdi
mov       rdx,7FFBE6E3C068
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L04
M01_L09
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
jmp       short M01_L12
M01_L10
 
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       r11,[rcx+60]
test      r11,r11
je        near ptr M01_L17
M01_L11
 
lea       rdx,[rbp-40]
mov       rcx,[rbp-58]
call      qword ptr [r11]
mov       rcx,[rbp+10]
mov       rdx,[rcx+18]
vmovdqu   xmm0,xmmword ptr [rbp-40]
vmovdqu   xmmword ptr [rbp-50],xmm0
mov       rcx,rdx
lea       rdx,[rbp-50]
cmp       [rcx],ecx
call      qword ptr [7FFBE6DCB868]; System.Collections.Generic.TreeSet`1[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]].AddIfNotPresent(System.Collections.Generic.KeyValuePair`2)
mov       rax,[rbp-58]
M01_L12
 
cmp       rsi,r15
jne       short M01_L15
lea       r14,[rax+8]
mov       ecx,[r14+8]
mov       rdx,[r14]
cmp       ecx,[rdx+44]
jne       near ptr M01_L18
M01_L13
 
mov       ecx,[r14+0C]
mov       rbx,[r14]
cmp       ecx,[rbx+38]
jae       short M01_L16
mov       rdx,[rbx+10]
lea       r8d,[rcx+1]
mov       [r14+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L14
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L13
mov       rdx,[rcx]
mov       rbx,[rcx+8]
lea       rcx,[r14+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[r14+20]
mov       rdx,rbx
call      CORINFO_HELP_CHECKED_ASSIGN_REF
jmp       near ptr M01_L10
M01_L14
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L15
 
mov       rcx,rax
mov       r11,7FFBE6001A30
call      qword ptr [r11]
test      eax,eax
jne       near ptr M01_L10
mov       rax,[rbp-58]
jmp       short M01_L19
M01_L16
 
mov       rax,[rbp-58]
mov       ecx,[rbx+38]
inc       ecx
mov       [r14+0C],ecx
xor       ecx,ecx
mov       [r14+18],rcx
mov       [r14+20],rcx
jmp       short M01_L19
M01_L17
 
mov       rcx,rdi
mov       rdx,7FFBE6E3C088
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L11
M01_L18
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L19
 
cmp       rsi,r15
jne       near ptr M01_L27
M01_L20
 
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,7ED
mov       rdx,7FFBE63B3B88
call      CORINFO_HELP_STRCNS
mov       rcx,rax
call      qword ptr [7FFBE63D66E8]
int       3
M01_L22
 
mov       r15,[rsi+18]
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+40]
test      rcx,rcx
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rdi
mov       rdx,7FFBE6E3BDA8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L24
 
mov       rdx,[r15+10]
call      qword ptr [7FFBE6144360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
test      rax,rax
je        near ptr M01_L02
mov       rcx,[rax+8]
mov       rdx,[r14+8]
mov       rax,[rcx]
mov       rax,[rax+40]
call      qword ptr [rax+10]
test      eax,eax
je        near ptr M01_L02
mov       rcx,[rdi+30]
mov       rcx,[rcx]
mov       rcx,[rcx+50]
test      rcx,rcx
je        short M01_L25
jmp       short M01_L26
M01_L25
 
mov       rcx,rdi
mov       rdx,7FFBE6E3C048
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       rcx,rax
M01_L26
 
call      CORINFO_HELP_NEWSFAST
mov       rbx,rax
mov       rdx,[rsi+18]
mov       rcx,rbx
mov       r8,r14
call      qword ptr [7FFBE6DD7918]
mov       rcx,[rbp+10]
lea       rcx,[rcx+18]
mov       rdx,rbx
call      CORINFO_HELP_ASSIGN_REF
nop
add       rsp,58
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L27
 
mov       rcx,rax
mov       r11,7FFBE6001A38
call      qword ptr [r11]
jmp       near ptr M01_L20
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
vzeroupper
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+80]
cmp       qword ptr [rbp-58],0
je        short M01_L28
mov       rax,[rbp-58]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L28
mov       rcx,rax
mov       r11,7FFBE6001A38
call      qword ptr [r11]
M01_L28
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2664AB30008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE614EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       near ptr M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFBE6BF7A50
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,offset System.Runtime.InteropServices.MemoryMarshal.GetReference[TFrom](System.ReadOnlySpan`1)
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       near ptr M01_L01
M01_L07
 
xor       eax,eax
jmp       short M01_L03
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE63AED00]
int       3
M01_L09
 
call      qword ptr [7FFBE63AF030]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE616EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFBE6C19948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFBE6C19960
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
xor       eax,eax
jmp       short M01_L03
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       near ptr M01_L01
call      qword ptr [7FFBE63CF030]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE63CED00]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE614EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFBE6BF9948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFBE6BF9960
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
xor       eax,eax
jmp       short M01_L05
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       short M01_L02
call      qword ptr [7FFBE63AF030]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE63AED00]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE614EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L07
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFBE6BF9948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L08
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFBE6BF9960
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L08
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
xor       eax,eax
jmp       short M01_L05
M01_L07
 
mov       ecx,4
call      qword ptr [7FFBE63AED00]
int       3
M01_L08
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       near ptr M01_L02
call      qword ptr [7FFBE63AF030]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE613EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L06
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L09
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L06
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L07
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L07
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFBE6BE9948
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFBE6BE9960
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
xor       eax,eax
jmp       short M01_L03
M01_L07
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jae       near ptr M01_L01
call      qword ptr [7FFBE639F030]
int       3
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE639ED00]
int       3
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rsi
push      rbx
sub       rsp,28
xor       eax,eax
mov       [rsp+20],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE612EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rsi,[rax]
M00_L00
 
mov       [rsp+20],rsi
mov       rsi,[rbx+18]
mov       rdx,[rsp+20]
lea       rcx,[rsi+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rsi+8],rax
add       rsp,28
pop       rbx
pop       rsi
ret
M00_L01
 
xor       esi,esi
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       near ptr M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+70]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFBE6BD9EE8
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFBE6BD9F00
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       near ptr M01_L01
M01_L07
 
xor       eax,eax
jmp       short M01_L03
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE638ED00]
int       3
M01_L09
 
call      qword ptr [7FFBE638F030]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE616EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rcx,[rax]
M00_L00
 
mov       [rsp+28],rcx
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
M00_L01
 
xor       ecx,ecx
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+60]
test      r11,r11
je        near ptr M01_L04
M01_L00
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L01
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       near ptr M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L03
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L04
 
mov       rdx,7FFBE6B88210
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       near ptr M01_L00
M01_L05
 
mov       rdx,7FFBE6B88228
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       near ptr M01_L01
M01_L07
 
xor       eax,eax
jmp       short M01_L03
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE63CED00]
int       3
M01_L09
 
call      qword ptr [7FFBE63CF030]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.TryGetValue()
push      rbx
sub       rsp,30
xor       eax,eax
mov       [rsp+28],rax
mov       rbx,rcx
mov       rcx,[rbx+280]
mov       rdx,[rbx+290]
cmp       [rcx],cl
call      qword ptr [7FFBE615EE68]; System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
test      rax,rax
je        short M00_L01
mov       rcx,[rax]
M00_L00
 
mov       [rsp+28],rcx
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,30
pop       rbx
ret
M00_L01
 
xor       ecx,ecx
jmp       short M00_L00
 
System.Collections.Generic.Dictionary`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].FindValue(System.__Canon)
push      r15
push      r14
push      r13
push      r12
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       [rsp+20],rcx
mov       rbx,rcx
mov       rsi,rdx
test      rsi,rsi
je        near ptr M01_L08
cmp       qword ptr [rbx+8],0
je        near ptr M01_L07
mov       rdi,[rbx+18]
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+60]
test      r11,r11
je        short M01_L00
jmp       short M01_L01
M01_L00
 
mov       rdx,7FFBE6B88820
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L01
 
mov       rcx,rdi
mov       rdx,rsi
call      qword ptr [r11]
mov       ebp,eax
mov       rcx,[rbx+8]
mov       edx,ebp
imul      rdx,[rbx+30]
shr       rdx,20
inc       rdx
mov       eax,[rcx+8]
mov       r8d,eax
imul      rdx,r8
shr       rdx,20
cmp       edx,eax
jae       near ptr M01_L10
mov       edx,edx
mov       r14d,[rcx+rdx*4+10]
mov       r15,[rbx+10]
xor       r13d,r13d
dec       r14d
M01_L02
 
mov       r12d,[r15+8]
cmp       r12d,r14d
jbe       short M01_L07
mov       ecx,r14d
lea       rcx,[rcx+rcx*2]
lea       r14,[r15+rcx*8+10]
cmp       [r14+10],ebp
jne       short M01_L06
mov       rcx,[rbx]
mov       rdx,[rcx+30]
mov       rdx,[rdx]
mov       r11,[rdx+68]
test      r11,r11
je        short M01_L03
jmp       short M01_L04
M01_L03
 
mov       rdx,7FFBE6B88838
call      CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov       r11,rax
M01_L04
 
mov       rdx,[r14]
mov       rcx,rdi
mov       r8,rsi
call      qword ptr [r11]
test      eax,eax
je        short M01_L06
lea       rax,[r14+8]
M01_L05
 
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r12
pop       r13
pop       r14
pop       r15
ret
M01_L06
 
mov       r14d,[r14+14]
inc       r13d
cmp       r12d,r13d
jb        short M01_L09
jmp       short M01_L02
M01_L07
 
xor       eax,eax
jmp       short M01_L05
M01_L08
 
mov       ecx,4
call      qword ptr [7FFBE63BED00]
int       3
M01_L09
 
call      qword ptr [7FFBE63BF030]
int       3
M01_L10
 
call      CORINFO_HELP_RNGCHKFAIL
int       3
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6BA5680]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6011110
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6011120
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6011118
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63E4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE667FB58]
mov       ecx,1B3
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE667FB58]
mov       ecx,43
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64E5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6655968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6156B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE667F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63E6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6154348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6154348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BE28
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BE38
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BE48
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE6011128
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFBE63BEFE8]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BE60
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6011130
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFBE63E4F30]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BF30
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BF00
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6B8BF18
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFBE6011138
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFBE6011138
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6205B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63BEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,1EB95560008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6BB6F58]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6021110
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6021120
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6021118
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63F4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE668FB58]
mov       ecx,1B3
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L24
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L05
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L28
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L06
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L07
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DCD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DCE8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       near ptr M01_L01
M01_L06
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DCF8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       near ptr M01_L02
M01_L07
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L10
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L17
M01_L08
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L20
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L09
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L08
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L09
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L10
 
mov       rcx,rax
mov       r11,7FFBE6021128
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L11
 
test      ecx,ecx
je        near ptr M01_L22
M01_L12
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L18
M01_L13
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L15
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L17
M01_L14
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L16
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L09
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L14
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L15
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6021130
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L12
mov       rcx,rax
jmp       short M01_L19
M01_L16
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       short M01_L19
M01_L17
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L18
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DD10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L13
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L21
M01_L20
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L11
M01_L21
 
cmp       rsi,r15
je        near ptr M01_L04
mov       r11,7FFBE6021138
call      qword ptr [r11]
jmp       near ptr M01_L04
M01_L22
 
mov       rcx,rsp
call      M01_L33
nop
M01_L23
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L24
 
mov       ecx,10
call      qword ptr [7FFBE63F4F30]
int       3
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L26
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DDE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L28
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L29
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DDB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       near ptr M01_L23
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L31
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L31
jmp       short M01_L32
M01_L31
 
mov       rcx,rbx
mov       rdx,7FFBE6B9DDC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L32
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFBE6021138
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2D5B3B00008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6B96F58]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6001110
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6001120
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6001118
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63D4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DCE8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DCF8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DD08
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE6001128
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DD20
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6001130
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFBE63D4F30]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DDF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DDC0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6B7DDD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFBE6001138
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,[rbp-48]
mov       r11,7FFBE6001138
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,195F39E0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6B76F58]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE5FE1110
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE5FE1120
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE5FE1118
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63B4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE664FB58]
mov       ecx,1B3
mov       rdx,7FFBE6625968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64B5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6126B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6625968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6126B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE664F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63B6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE664FB58]
mov       ecx,43
mov       rdx,7FFBE6625968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64B5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6126B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6625968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6126B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE664F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63B6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6124348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6124348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DCE8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DCF8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DD08
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE5FE1128
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFBE638EFE8]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DD20
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFBE5FE1130
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFBE63B4F30]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DDF0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DDC0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6B5DDD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFBE5FE1138
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,rax
mov       r11,7FFBE5FE1138
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61D5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61D5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE638EF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,184FE620008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6B86F58]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE5FF0FF0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE5FF1000
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE5FF0FF8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63C4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE665FB58]
mov       ecx,1B3
mov       rdx,7FFBE6635630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5490
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE665FB58]
mov       ecx,43
mov       rdx,7FFBE6635630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64C5490
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6635630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6136B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE665F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63C6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6134348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L23
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6134348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L26
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DCD8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DCE8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DCF8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L19
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L18
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE5FF1008
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L32
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L17
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L14
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L19
M01_L13
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L15
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L14
 
mov       rcx,[rbp-48]
mov       r11,7FFBE5FF1010
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L16
M01_L15
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
M01_L16
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L20
M01_L17
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DD10
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L18
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L19
 
call      qword ptr [7FFBE639EFE8]
int       3
M01_L20
 
cmp       rsi,r15
jne       near ptr M01_L31
M01_L21
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       ecx,10
call      qword ptr [7FFBE63C4F30]
int       3
M01_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L24
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L24
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DDE0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L25
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L27
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L27
jmp       short M01_L28
M01_L27
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DDB0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L28
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L33
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L29
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6B6DDC8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L31
 
mov       r11,7FFBE5FF1018
call      qword ptr [r11]
jmp       near ptr M01_L21
M01_L32
 
mov       rcx,rsp
call      M01_L34
nop
M01_L33
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L34
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L35
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L35
mov       rcx,rax
mov       r11,7FFBE5FF1018
call      qword ptr [r11]
M01_L35
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61E5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE639EF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,18B016B0008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6BB6F58]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6020FF0
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6021000
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6020FF8
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63F4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE668FB58]
mov       ecx,1B3
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L21
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L25
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E2B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E2C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E2D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L14
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L17
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE6021008
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L31
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        short M01_L15
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L16
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       short M01_L14
M01_L13
 
mov       edx,[rdi+0C]
mov       rax,[rdi]
mov       r14d,[rax+38]
cmp       edx,r14d
jb        short M01_L18
inc       r14d
mov       [rdi+0C],r14d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
jmp       near ptr M01_L19
M01_L14
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L15
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E2E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       short M01_L12
M01_L16
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6021010
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L19
M01_L17
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L18
 
mov       rax,[rax+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       near ptr M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        near ptr M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L19
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
cmp       rsi,r15
jne       near ptr M01_L30
M01_L20
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L21
 
mov       ecx,10
call      qword ptr [7FFBE63F4F30]
int       3
M01_L22
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L23
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L23
jmp       short M01_L24
M01_L23
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E3B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L24
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L25
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L26
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L26
jmp       short M01_L27
M01_L26
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E388
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L27
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L32
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L28
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L28
jmp       short M01_L29
M01_L28
 
mov       rcx,rbx
mov       rdx,7FFBE6B9E3A0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L29
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L30
 
mov       r11,7FFBE6021018
call      qword ptr [r11]
jmp       near ptr M01_L20
M01_L31
 
mov       rcx,rsp
call      M01_L33
nop
M01_L32
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L33
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L34
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L34
mov       rcx,[rbp-48]
mov       r11,7FFBE6021018
call      qword ptr [r11]
M01_L34
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,2BD69F80008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6CD7A20]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6001330
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6001340
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6001338
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63D4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE666FB58]
mov       ecx,1B3
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE666FB58]
mov       ecx,43
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64D5A58
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6645968
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6146B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE666F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63D6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L23
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6144348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L26
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0120
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0130
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0140
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L19
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L18
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE6001348
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L32
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L17
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L14
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L19
M01_L13
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L15
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L14
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6001350
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L16
M01_L15
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
M01_L16
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L20
M01_L17
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0158
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L18
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L19
 
call      qword ptr [7FFBE63AEFE8]
int       3
M01_L20
 
cmp       rsi,r15
jne       near ptr M01_L31
M01_L21
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       ecx,10
call      qword ptr [7FFBE63D4F30]
int       3
M01_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L24
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L24
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0228
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L25
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L27
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L27
jmp       short M01_L28
M01_L27
 
mov       rcx,rbx
mov       rdx,7FFBE6CF01F8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L28
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L33
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L29
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6CF0210
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L31
 
mov       r11,7FFBE6001358
call      qword ptr [r11]
jmp       near ptr M01_L21
M01_L32
 
mov       rcx,rsp
call      M01_L34
nop
M01_L33
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L34
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L35
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L35
mov       rcx,rax
mov       r11,7FFBE6001358
call      qword ptr [r11]
M01_L35
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE61F5B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63AEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,23B9F040008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
 

.NET 8.0.15 (8.0.1525.16413), X64 RyuJIT AVX2

DotNetTips.Spargine.Extensions.BenchmarkTests.DictionaryExtensionsCollectionBenchmark.UpsertDictionary01()
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,48
xor       eax,eax
mov       [rsp+28],rax
vxorps    xmm4,xmm4,xmm4
vmovdqa   xmmword ptr [rsp+30],xmm4
mov       [rsp+40],rax
mov       rbx,rcx
mov       rsi,[rbx+280]
lea       rcx,[rsp+30]
lea       r9,[rsp+40]
mov       r8,rsi
mov       rdx,offset MD_System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>>, Boolean ByRef)
call      qword ptr [7FFBE6D86F28]; System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
cmp       byte ptr [rsp+40],0
je        near ptr M00_L02
mov       rdi,[rsp+30]
mov       rbp,[rsp+38]
test      rbp,rbp
je        short M00_L01
xor       ecx,ecx
test      rdi,rdi
setne     cl
test      ecx,ecx
je        short M00_L03
test      rsi,rsi
je        near ptr M00_L04
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6021BC8
call      qword ptr [r11]
test      eax,eax
je        short M00_L00
mov       rcx,rsi
mov       rdx,rdi
mov       r11,7FFBE6021BD8
call      qword ptr [r11]
M00_L00
 
mov       rcx,rsi
mov       r8,rbp
mov       rdx,rdi
mov       r11,7FFBE6021BD0
call      qword ptr [r11]
M00_L01
 
mov       [rsp+28],rsi
mov       rbx,[rbx+18]
mov       rdx,[rsp+28]
lea       rcx,[rbx+8]
call      CORINFO_HELP_ASSIGN_REF
xor       eax,eax
mov       [rbx+8],rax
add       rsp,48
pop       rbx
pop       rbp
pop       rsi
pop       rdi
ret
M00_L02
 
call      qword ptr [7FFBE63F4F90]
int       3
M00_L03
 
call      qword ptr [7FFBE668FB58]
mov       ecx,1B3
mov       rdx,7FFBE6665630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5338
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
M00_L04
 
call      qword ptr [7FFBE668FB58]
mov       ecx,43
mov       rdx,7FFBE6665630
call      CORINFO_HELP_STRCNS
mov       rbx,rax
mov       ecx,1ADC
mov       rdx,7FFBE64F5338
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       ecx,1
mov       rdx,7FFBE6665630
call      CORINFO_HELP_STRCNS
mov       rdx,rax
mov       rcx,rbx
call      qword ptr [7FFBE6166B08]; System.String.Concat(System.String, System.String)
mov       rbx,rax
mov       rcx,offset MT_System.ArgumentNullException
call      CORINFO_HELP_NEWSFAST
mov       rsi,rax
call      qword ptr [7FFBE668F948]
mov       r8,rax
mov       rdx,rbx
mov       rcx,rsi
call      qword ptr [7FFBE63F6670]
mov       rcx,rsi
call      CORINFO_HELP_THROW
int       3
 
System.Linq.Enumerable.TryGetLast[[System.Collections.Generic.KeyValuePair`2[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]], System.Private.CoreLib]](System.Collections.Generic.IEnumerable`1>, Boolean ByRef)
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,48
lea       rbp,[rsp+70]
xor       eax,eax
mov       [rbp-40],rax
mov       [rbp-38],rax
mov       [rbp-50],rsp
mov       [rbp-30],rdx
mov       [rbp+10],rcx
mov       [rbp+28],r9
mov       rbx,rdx
mov       rsi,r8
test      rsi,rsi
je        near ptr M01_L22
mov       rcx,[rbx+10]
mov       rcx,[rcx+10]
test      rcx,rcx
je        short M01_L03
M01_L00
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       rdi,rax
test      rdi,rdi
jne       near ptr M01_L23
mov       rcx,[rbx+10]
mov       rcx,[rcx+18]
test      rcx,rcx
je        short M01_L04
M01_L01
 
mov       rdx,rsi
call      qword ptr [7FFBE6164348]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfInterface(Void*, System.Object)
mov       r14,rax
test      r14,r14
jne       near ptr M01_L26
mov       rcx,[rbx+10]
mov       r11,[rcx+20]
test      r11,r11
je        short M01_L05
M01_L02
 
mov       rcx,rsi
call      qword ptr [r11]
mov       [rbp-48],rax
jmp       short M01_L06
M01_L03
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D1B0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L00
M01_L04
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D1C0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       rcx,rax
jmp       short M01_L01
M01_L05
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D1D0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
jmp       short M01_L02
M01_L06
 
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
jne       short M01_L09
lea       rdi,[rax+8]
mov       ecx,[rdi+8]
mov       rdx,[rdi]
cmp       ecx,[rdx+44]
jne       near ptr M01_L19
M01_L07
 
mov       rax,[rbp-48]
mov       ecx,[rdi+0C]
mov       r14,[rdi]
cmp       ecx,[r14+38]
jae       near ptr M01_L18
mov       rdx,[r14+10]
lea       r8d,[rcx+1]
mov       [rdi+0C],r8d
cmp       ecx,[rdx+8]
jae       short M01_L08
mov       ecx,ecx
lea       rcx,[rcx+rcx*2]
lea       rcx,[rdx+rcx*8+10]
cmp       dword ptr [rcx+14],0FFFFFFFF
jl        short M01_L07
mov       rdx,[rcx]
mov       r14,[rcx+8]
lea       rcx,[rdi+18]
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       short M01_L11
M01_L08
 
call      CORINFO_HELP_RNGCHKFAIL
M01_L09
 
mov       rcx,rax
mov       r11,7FFBE6021BE0
call      qword ptr [r11]
mov       ecx,eax
mov       rax,[rbp-48]
M01_L10
 
test      ecx,ecx
je        near ptr M01_L32
M01_L11
 
mov       rcx,[rbx+10]
mov       r11,[rcx+28]
test      r11,r11
je        near ptr M01_L17
M01_L12
 
lea       rdx,[rbp-40]
mov       rcx,rax
call      qword ptr [r11]
cmp       rsi,r15
jne       short M01_L14
mov       rcx,[rbp-48]
lea       rdi,[rcx+8]
mov       edx,[rdi+8]
mov       rax,[rdi]
cmp       edx,[rax+44]
jne       near ptr M01_L19
M01_L13
 
mov       edx,[rdi+0C]
mov       r14,[rdi]
cmp       edx,[r14+38]
jae       short M01_L15
mov       rax,[r14+10]
lea       r8d,[rdx+1]
mov       [rdi+0C],r8d
cmp       edx,[rax+8]
jae       short M01_L08
mov       edx,edx
lea       rdx,[rdx+rdx*2]
lea       rdx,[rax+rdx*8+10]
cmp       dword ptr [rdx+14],0FFFFFFFF
jl        short M01_L13
mov       rax,[rdx]
mov       r14,[rdx+8]
lea       rcx,[rdi+18]
mov       rdx,rax
call      CORINFO_HELP_CHECKED_ASSIGN_REF
lea       rcx,[rdi+20]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp-48]
jmp       near ptr M01_L11
M01_L14
 
mov       rcx,[rbp-48]
mov       r11,7FFBE6021BE8
call      qword ptr [r11]
test      eax,eax
mov       rax,[rbp-48]
jne       near ptr M01_L11
mov       rcx,rax
jmp       short M01_L16
M01_L15
 
mov       r11d,[r14+38]
inc       r11d
mov       [rdi+0C],r11d
xor       r11d,r11d
mov       [rdi+18],r11
mov       [rdi+20],r11
mov       rcx,[rbp-48]
M01_L16
 
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rdi,[rbp-40]
mov       r14,[rbp-38]
jmp       short M01_L20
M01_L17
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D1E8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
mov       rax,[rbp-48]
jmp       near ptr M01_L12
M01_L18
 
mov       ecx,[r14+38]
inc       ecx
mov       [rdi+0C],ecx
xor       ecx,ecx
mov       [rdi+18],rcx
mov       [rdi+20],rcx
jmp       near ptr M01_L10
M01_L19
 
call      qword ptr [7FFBE63CEFE8]
int       3
M01_L20
 
cmp       rsi,r15
jne       near ptr M01_L31
M01_L21
 
mov       rcx,[rbp+10]
mov       rdx,rdi
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rcx,[rbp+10]
lea       rcx,[rcx+8]
mov       rdx,r14
call      CORINFO_HELP_CHECKED_ASSIGN_REF
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L22
 
mov       ecx,10
call      qword ptr [7FFBE63F4F30]
int       3
M01_L23
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],40
jle       short M01_L24
mov       r11,[rcx+40]
test      r11,r11
je        short M01_L24
jmp       short M01_L25
M01_L24
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D2B8
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L25
 
mov       rcx,rdi
mov       rdx,[rbp+10]
mov       r8,[rbp+28]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L26
 
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],30
jle       short M01_L27
mov       r11,[rcx+30]
test      r11,r11
je        short M01_L27
jmp       short M01_L28
M01_L27
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D288
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L28
 
mov       rcx,r14
call      qword ptr [r11]
mov       esi,eax
test      esi,esi
jle       short M01_L33
mov       r8,[rbp+28]
mov       byte ptr [r8],1
mov       rcx,[rbx+10]
cmp       qword ptr [rcx+8],38
jle       short M01_L29
mov       r11,[rcx+38]
test      r11,r11
je        short M01_L29
jmp       short M01_L30
M01_L29
 
mov       rcx,rbx
mov       rdx,7FFBE6D6D2A0
call      CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov       r11,rax
M01_L30
 
lea       r8d,[rsi-1]
mov       rcx,r14
mov       rdx,[rbp+10]
call      qword ptr [r11]
mov       rax,[rbp+10]
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L31
 
mov       r11,7FFBE6021BF0
call      qword ptr [r11]
jmp       near ptr M01_L21
M01_L32
 
mov       rcx,rsp
call      M01_L34
nop
M01_L33
 
mov       r8,[rbp+28]
mov       byte ptr [r8],0
xor       eax,eax
mov       rdx,[rbp+10]
mov       [rdx],rax
mov       [rdx+8],rax
mov       rax,rdx
add       rsp,48
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
M01_L34
 
push      rbp
push      r15
push      r14
push      rdi
push      rsi
push      rbx
sub       rsp,28
mov       rbp,[rcx+20]
mov       [rsp+20],rbp
lea       rbp,[rbp+70]
cmp       qword ptr [rbp-48],0
je        short M01_L35
mov       rax,[rbp-48]
mov       rsi,[rax]
mov       r15,offset MT_System.Collections.Generic.Dictionary`2+Enumerator[[System.String, System.Private.CoreLib],[DotNetTips.Spargine.Tester.Models.RefTypes.Person`1[[DotNetTips.Spargine.Tester.Models.RefTypes.Address, DotNetTips.Spargine.8.Tester]], DotNetTips.Spargine.8.Tester]]
cmp       rsi,r15
je        short M01_L35
mov       rcx,rax
mov       r11,7FFBE6021BF0
call      qword ptr [r11]
M01_L35
 
nop
add       rsp,28
pop       rbx
pop       rsi
pop       rdi
pop       r14
pop       r15
pop       rbp
ret
 
System.String.Concat(System.String, System.String)
push      r15
push      r14
push      rdi
push      rsi
push      rbp
push      rbx
sub       rsp,28
mov       rsi,rcx
mov       rbx,rdx
test      rsi,rsi
je        near ptr M02_L02
mov       edi,[rsi+8]
test      edi,edi
je        short M02_L02
test      rbx,rbx
je        short M02_L00
mov       ebp,[rbx+8]
test      ebp,ebp
je        short M02_L00
mov       r14d,edi
lea       ecx,[r14+rbp]
test      ecx,ecx
jl        short M02_L01
call      System.String.FastAllocateString(Int32)
mov       r15,rax
cmp       [r15],r15b
lea       rcx,[r15+0C]
lea       rdx,[rsi+0C]
mov       r8d,edi
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
movsxd    r8,r14d
lea       rcx,[r15+r8*2+0C]
lea       rdx,[rbx+0C]
mov       r8d,ebp
add       r8,r8
call      qword ptr [7FFBE6215B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
mov       rax,r15
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L00
 
mov       rax,rsi
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L01
 
call      qword ptr [7FFBE63CEF40]
int       3
M02_L02
 
test      rbx,rbx
je        short M02_L03
mov       ebp,[rbx+8]
xor       eax,eax
test      ebp,ebp
sete      al
test      eax,eax
je        short M02_L04
M02_L03
 
mov       rax,192F8B30008
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret
M02_L04
 
mov       rax,rbx
add       rsp,28
pop       rbx
pop       rbp
pop       rsi
pop       rdi
pop       r14
pop       r15
ret